Learn R Programming

powerSurvEpi (version 0.0.6)

powerEpiCont: Power Calculation for Cox Proportional Hazards Regression with nonbinary covariates for Epidemiological Studies

Description

Power calculation for Cox proportional hazards regression with nonbinary covariates for Epidemiological Studies. Some parameters will be estimated based on a pilot data set.

Usage

powerEpiCont(formula, dat, X1, failureFlag, n, theta, alpha = 0.05)

Arguments

formula
a formula object relating the covariate of interest to other covariates to calculate the multiple correlation coefficient. The variables in formula must be in the data frame dat.
dat
a nPilot by p data frame representing the pilot data set, where nPilot is the number of subjects in the pilot study and the p ($>1$) columns contains the covariate of interest and other cova
X1
the covariate of interest.
failureFlag
a nPilot by 1 vector of indicators indicating if a subject is failure (failureFlag=1) or alive (failureFlag=0).
n
total number of subjects.
theta
postulated hazard ratio.
alpha
type I error rate.

Value

  • powerThe power of the test.
  • rho2square of the correlation between $X_1$ and $X_2$.
  • sigma2variance of the covariate of interest.
  • psiproportion of subjects died of the disease of interest.

Details

This is an implementation of the power calculation formula derived by Hsieh and Lavori (2000) for the following Cox proportional hazards regression in the epidemiological studies: $$h(t|x_1, \boldsymbol{x}_2)=h_0(t)\exp(\beta_1 x_1+\boldsymbol{\beta}_2 \boldsymbol{x}_2),$$ where the covariate $X_1$ is a nonbinary variable and $\boldsymbol{X}_2$ is a vector of other covariates. Suppose we want to check if the hazard ratio of the main effect $X_1=1$ to $X_1=0$ is equal to $1$ or is equal to $\exp(\beta_1)=\theta$. Given the type I error rate $\alpha$ for a two-sided test, the power required to detect a hazard ratio as small as $\exp(\beta_1)=\theta$ is $$power=\Phi\left(-z_{1-\alpha/2}+\sqrt{n[\log(\theta)]^2 \sigma^2 \psi (1-\rho^2)}\right),$$ where $\sigma^2=Var(X_1)$, $\psi$ is the proportion of subjects died of the disease of interest, and $\rho$ is the multiple correlation coefficient of the following linear regression: $$x_1=b_0+\boldsymbol{b}^T\boldsymbol{x}_2.$$ That is, $\rho^2=R^2$, where $R^2$ is the proportion of variance explained by the regression of $X_1$ on the vector of covriates $\boldsymbol{X}_2$.

$rho$ will be estimated from a pilot study.

References

Hsieh F.Y. and Lavori P.W. (2000). Sample-size calculation for the Cox proportional hazards regression model with nonbinary covariates. Controlled Clinical Trials. 21:552-560.

See Also

powerEpiCont.default

Examples

Run this code
# generate a toy pilot data set
  set.seed(123456)
  X1 <- rnorm(100, mean = 0, sd = 0.3126)
  X2 <- sample(c(0, 1), 100, replace = TRUE)
  failureFlag <- sample(c(0, 1), 100, prob = c(0.25, 0.75), replace = TRUE)
  dat <- data.frame(X1 = X1, X2 = X2, failureFlag = failureFlag)

  powerEpiCont(formula = X1 ~ X2, dat = dat, X1 = X1, failureFlag = failureFlag, 
    n = 107, theta = exp(1), alpha = 0.05)

Run the code above in your browser using DataLab