Calculate minimal detectable slope for mediator given sample size and power in cox regression based on Vittinghoff, Sen and McCulloch's (2009) method.

1 2 3 4 5 6 7 | ```
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(λ)=\log(λ_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(λ)=\log(λ_0)+b_1 x_i + b_2 m_i
*

The reduced model is

*
\log(λ)=\log(λ_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. Code for one-sided tests will be added later.

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`

1 2 3 4 5 6 | ```
# 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)
``` |

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.