power_binary {samplesizelogisticcasecontrol} | R Documentation |
Power for a binary exposure
Description
Calculates the power of as case-control study with a binary exposure variable
Usage
power_binary(prev, logOR, probXeq1=NULL, distF=NULL, data=NULL,
size.2sided=0.05, sampleSize=1000, cc.ratio=0.5, interval=c(-100, 100), tol=0.0001)
Arguments
prev |
Number between 0 and 1 giving the prevalence of disease. No default. |
logOR |
Vector of ordered log-odds ratios for the confounders and exposure.
The last log-odds ratio in the vector is for the exposure. If the
option |
probXeq1 |
NULL or a number between 0 and 1 giving the probability that the exposure
variable is 1. If set to NULL, the the |
distF |
NULL, a function or a character string giving the function to generate random
vectors from the distribution of the confounders and exposure. The order of the returned
vector must match the order of |
data |
NULL, matrix, data frame or a list of type |
size.2sided |
Number between 0 and 1 giving the size of the 2-sided hypothesis test. The default is 0.05. |
sampleSize |
Sample size of the study. The default is 1000. |
cc.ratio |
Number between 0 and 1 for the proportion of cases in the case-control sample. The default is 0.5. |
interval |
Two element vector giving the interval to search for the estimated intercept parameter. The default is c(-100, 100). |
tol |
Positive value giving the stopping tolerance for the root finding method to estimate the intercept parameter. The default is 0.0001. |
Details
If there are no confounders (length(logOR) = 1), then either probXeq1
or data
must
be specified, where probXeq1
takes precedance. If there are confounders (length(logOR) > 1), then
either data
or distF
must be specified, where data
takes precedance.
Value
A list containing four powers, where two of them are for a Wald test and two for a score test.
The two powers for each test correspond to the equations for
n_{1}
and n_{2}
.
See Also
power_continuous
, power_ordinal
, power_data
Examples
prev <- 0.01
logOR <- 0.3
# No confounders, Prob(X=1)=0.2
power_binary(prev, logOR, probXeq1=0.2)
# Generate data for a N(0,1) confounder and binary exposure
data <- cbind(rnorm(1000), rbinom(1000, 1, 0.4))
beta <- c(0.1, 0.2)
power_binary(prev, beta, data=data)
# Define a function to generate random vectors for two confounders and the binary exposure
f <- function(n) {cbind(rnorm(n), rbinom(n, 3, 0.5), rbinom(n, 1, 0.3))}
logOR <- c(0.2, 0.3, 0.25)
power_binary(prev, logOR, distF=f)