| od.2m {odr} | R Documentation |
Optimal sample allocation calculation for two-level MRTs detecting main effects
Description
The optimal design of two-level
multisite randomized trials (MRTs) detecting main effects is to calculate
the sample allocation that minimizes the variance of a
treatment effect under a fixed budget, which is approximately the optimal
sample allocation that maximizes statistical power under a fixed budget.
The optimal design parameters include
the level-one sample size per site (n)
and the proportion of level-one unit to be assigned to treatment (p).
This function solves the optimal n and/or p
with and without a constraint.
Usage
od.2m(
n = NULL,
p = NULL,
icc = NULL,
r12 = NULL,
r22m = NULL,
c1 = NULL,
c2 = NULL,
c1t = NULL,
omega = NULL,
m = NULL,
plots = TRUE,
plot.by = NULL,
nlim = NULL,
plim = NULL,
varlim = NULL,
nlab = NULL,
plab = NULL,
varlab = NULL,
vartitle = NULL,
verbose = TRUE,
iter = 100,
tol = 1e-10
)
Arguments
n |
The level-1 sample size per level-2 unit. |
p |
The proportion of level-4 clusters/units to be assigned to treatment. |
icc |
The unconditional intraclass correlation coefficient (ICC) in population or in each treatment condition. |
r12 |
The proportion of level-1 variance explained by covariates. |
r22m |
The proportion of variance of site-specific treatment effect explained by covariates. |
c1 |
The cost of sampling one level-1 unit in control condition. |
c2 |
The cost of sampling one level-2 unit in control condition. |
c1t |
The cost of sampling one level-1 unit in treatment condition. |
omega |
The standardized variance of site-specific treatment effect. |
m |
Total budget, default is the total costs of sampling 60 sites. |
plots |
Logical, provide variance plots if TRUE, otherwise not; default value is TRUE. |
plot.by |
Plot the variance by |
nlim |
The plot range for n, default value is c(2, 50). |
plim |
The plot range for p, default value is c(0, 1). |
varlim |
The plot range for variance, default value is c(0, 0.05). |
nlab |
The plot label for |
plab |
The plot label for |
varlab |
The plot label for variance, default value is "Variance". |
vartitle |
The title of variance plot, default value is NULL. |
verbose |
Logical; print the values of |
iter |
Number of iterations; default value is 100. |
tol |
Tolerance for convergence; default value is 1e-10. |
Value
Unconstrained or constrained optimal sample allocation
(n and p).
The function also returns the variance of the treatment effect,
function name, design type,
and parameters used in the calculation.
References
Shen, Z., & Kelcey, B. (in press). Optimal sample allocation in multisite randomized trials. The Journal of Experimental Education. <https://doi.org/10.1080/00220973.2020.1830361>
Examples
# Unconstrained optimal design #---------
myod1 <- od.2m(icc = 0.2, omega = 0.02, r12 = 0.5, r22m = 0.5,
c1 = 1, c2 = 10, c1t = 10,
varlim = c(0, 0.005))
myod1$out # n = 20, p =0.37
# Plots by p
myod1 <- od.2m(icc = 0.2, omega = 0.02,
r12 = 0.5, r22m = 0.5,
c1 = 1, c2 = 10, c1t = 10,
varlim = c(0, 0.005), plot.by = list(p = 'p'))
# Constrained optimal design with p = 0.5 #---------
myod2 <- od.2m(icc = 0.2, omega = 0.02,
r12 = 0.5, r22m = 0.5,
c1 = 1, c2 = 10, c1t = 10,
varlim = c(0, 0.005), p = 0.5)
myod2$out
# Relative efficiency (RE)
myre <- re(od = myod1, subod= myod2)
myre$re # RE = 0.86
# Constrained optimal design with n = 5 #---------
myod3 <- od.2m(icc = 0.2, omega = 0.02,
r12 = 0.5, r22m = 0.5, c1 = 1, c2 = 10,
c1t = 10, varlim = c(0, 0.005), n = 5)
myod3$out
# Relative efficiency (RE)
myre <- re(od = myod1, subod= myod3)
myre$re # RE = 0.79
# Constrained n and p, no calculation performed #---------
myod4 <- od.2m(icc = 0.2, omega = 0.02, r12 = 0.5, r22m = 0.5,
c1 = 1, c2 = 10, c1t = 10,
varlim = c(0, 0.005), p = 0.5, n = 10)
myod4$out
# Relative efficiency (RE)
myre <- re(od = myod1, subod= myod4)
myre$re # RE = 0.84