relR_samplesize {phylosamp} | R Documentation |
Calculate sample size needed to detect differential transmission
Description
Function for calculating sample size given a set of assumptions. This is the high level wrapper function that users should call directly.
Usage
relR_samplesize(
R_a,
R_b,
p_a,
N,
alpha = 0.05,
alternative = c("two_sided", "less", "greater"),
power = 0.8,
sensitivity = 1,
specificity = 1,
overdispersion = NULL,
correct_for_imbalance = FALSE
)
Arguments
R_a |
Numeric (Positive). The assumed R among the group in the denominator of the ratio. Input value must be greater than 0. |
R_b |
Numeric (Positive). The assumed R among the group in the numerator of the ratio. Input value must be greater than 0. |
p_a |
Numeric. The proportion of the population in group |
N |
Numeric (Positive). The size of the infected pool. Only one of
|
alpha |
Numeric. The desired alpha level. Default: 0.05 |
alternative |
Character. Specifies the alternative hypothesis.
Must be: |
power |
Numeric. The desired power. Must be a value between 0 and 1. Default: 0.8. |
sensitivity |
Numeric. The sensitivity of the linkage criteria. Must be between 0 and 1. Default: 1. |
specificity |
Numeric. The specificity of the linkage criteria. Must be between 0 and 1. Default: 1. |
overdispersion |
Numeric (Positive). An overdispersion parameter, set
if the assumed distribution of the number of edges is negative binomial.
If |
correct_for_imbalance |
Logical. Should we use simulation to correct
for being over/under powered due to large differences in group sizes?
Default: |
Value
Sample size needed achieve desired type I and II error rates
under assumptions. Will return NA
and throw a warning if impossible.
Examples
## Calculate sample size needed to detect a difference between groups where
## group A has a reproductive value of 2, group B has a reproductive
## value of 2.5, the groups are balanced, and the total outbreak size is
## 1,000
relR_samplesize(R_a = 2,
R_b = 2.5,
p_a = 0.5,
N = 1000)
## Update the above calculation to account for imperfect sensitivity = 0.7
relR_samplesize(R_a = 2,
R_b = 2.5,
p_a = 0.5,
N = 1000,
sensitivity = 0.7)
## Update the above calculation to allow for overdispersion
relR_samplesize(R_a = 2,
R_b = 2.5,
p_a = 0.5,
N = 1000,
sensitivity = 0.7,
overdispersion = 2000)