minEffect.VSMc.cox {powerMediation} | R Documentation |
Calculate minimal detectable slope for mediator given sample size and power in cox regression based on Vittinghoff, Sen and McCulloch's (2009) method.
minEffect.VSMc.cox(n,
power,
sigma.m,
psi,
corr.xm,
alpha = 0.05,
verbose = TRUE)
n |
sample size. |
power |
power for testing |
sigma.m |
standard deviation of the mediator. |
psi |
the probability that an observation is uncensored, so that
the number of event |
corr.xm |
correlation between the predictor |
alpha |
type I error rate. |
verbose |
logical. |
The test is for testing the null hypothesis b_2=0
versus the alternative hypothesis b_2\neq 0
for the cox regressions:
\log(\lambda)=\log(\lambda_0)+b_1 x_i + b_2 m_i
Vittinghoff et al. (2009) showed that for the above cox regression, testing the mediation effect
is equivalent to testing the null hypothesis H_0: b_2=0
versus the alternative hypothesis H_a: b_2\neq 0
, if the
correlation corr.xm
between the primary predictor and mediator is non-zero.
The full model is
\log(\lambda)=\log(\lambda_0)+b_1 x_i + b_2 m_i
The reduced model is
\log(\lambda)=\log(\lambda_0)+b_1 x_i
Vittinghoff et al. (2009) mentioned that if confounders need to be included
in both the full and reduced models, the sample size/power calculation formula
could be accommodated by redefining corr.xm
as the multiple
correlation of the mediator with the confounders as well as the predictor.
b2 |
minimum absolute detectable effect. |
res.uniroot |
results of optimization to find the optimal sample size. |
The test is a two-sided test. For one-sided tests, please double the
significance level. For example, you can set alpha=0.10
to obtain one-sided test at 5% significance level.
Weiliang Qiu stwxq@channing.harvard.edu
Vittinghoff, E. and Sen, S. and McCulloch, C.E.. Sample size calculations for evaluating mediation. Statistics In Medicine. 2009;28:541-557.
powerMediation.VSMc.cox
,
ssMediation.VSMc.cox
# example in section 6 (page 547) of Vittinghoff et al. (2009).
# minimum effect is = log(1.5) = 0.4054651
minEffect.VSMc.cox(n = 1399, power = 0.7999916,
sigma.m = sqrt(0.25 * (1 - 0.25)), psi = 0.2, corr.xm = 0.3,
alpha = 0.05, verbose = TRUE)