`bayes.prop.test`

estimates the relative frequency of success for two or
more groups using Bayesian estimation and is intended as a replacement for
`prop.test`

.
`bayes.prop.test(x, n, comp.theta = NULL, alternative = NULL, cred.mass = 0.95, correct = NULL, n.iter = 15000, progress.bar = "none", p, conf.level)`

x

a vector of counts of successes, a one-dimensional table with two
entries, or a two-dimensional table (or matrix) with 2 columns, giving the
counts of successes and failures, respectively.

n

a vector of counts of trials; ignored if x is a matrix or a table.

comp.theta

a vector of fixed relative frequencies of success to compare
with the estimated relative frequency of success. The length of

`comp.theta`

must be the same as the number of groups specified by
`x`

, and its elements must be greater than 0 and less than 1. This
argument fills a similar role as `p`

in `prop.test`

.alternative

ignored and is only retained in order to mantain
compatibility with

`prop.test`

.cred.mass

the amount of probability mass that will be contained in
reported credible intervals. This argument fills a similar role as

`conf.level`

in `prop.test`

.correct

ignored and is only retained in order to mantain compatibility
with

`prop.test`

n.iter

The number of iterations to run the MCMC sampling.

progress.bar

The type of progress bar. Possible values are "text",
"gui", and "none".

p

same as

`comp.theta`

and is only retained in order to mantain
compatibility with `prop.test`

.conf.level

same as

`cred.mass`

and is only retained in order to
mantain compatibility with `prop.test`

.-
A list of class

`bayes_prop_test`

that contains information about
the analysis. It can be further inspected using the functions
`summary`

, `plot`

, `diagnostics`

and
`model.code`

.
`bayes.prop.test`

estimates \theta₁…ₘ, the relative
frequencies of success for each of the $m$ groups. The following model is
assumed for each group:$$x \sim \mathrm{Binom}(\theta, n)$$ $$\theta \sim \mathrm{Beta}(1, 1)$$

Here the prior on the $\theta$s is a non-informative $Beta(1, 1)$ distribution which is identical to a $Uniform(0, 1)$ distribution. By `plot`

ing and looking at a
`summary`

of the object returned by `bayes.prop.test`

you can get
more information about the shape of the posterior and the posterior predictive
distribution. `model.code`

prints out the corresponding R code
underlying `bayes.prop.test`

which can be copy-n-pasted into an R script
and modified, for example, changing the prior on $\theta$.

The `print`

and `plot`

function will only work well with a small
number of groups (2 to 6). If you have more groups you might want to run the
model with a small number of groups and then print the model code using
`model.code`

and fit the model using that code. The current model does
not assume any dependency between the groups, if this is an unreasonable assumption
you might want to modify the model code (from `model.code`

) to
include a dependency between the groups (see
here
for an example).

`bayes.binom.test`

for when you want to estimate the
relative frequency for only one group.
# Data from Muller, F. H., Tobakmissbrauch und Lungencarcinom, # Zeit. f. Krebsforsch. 49, 57-85, 1939. One of the early papers # investigating the relation between smoking and lung cancer. # Number of heavy smokers in one group of 86 lung cancer patients # and one group of 86 healthy individuals. no_heavy_smokers <- c(56, 31) no_cases <- c(86, 86) bayes.prop.test(no_heavy_smokers, no_cases) # Save the return value in order to inspect the model result further. fit <- bayes.prop.test(no_heavy_smokers, no_cases) summary(fit) plot(fit) # MCMC diagnostics (should not be necessary for such a simple model) diagnostics(fit) # Print out the R code to run the model. This can be copy'n'pasted into # an R-script and further modified. model.code(fit)

Run the code above in your browser using DataCamp Workspace