powerEpi(X1, X2, failureFlag, n, theta, alpha = 0.05)nPilot by 1 vector, where nPilot is the number of subjects
in the pilot data set. This vector records the values of the covariate of
interest for the nPilot subjects in the pilot study. X1 shnPilot by 1 vector, where nPilot is the number of subjects
in the pilot study. This vector records the values of the second covariate
for the nPilot subjects in the pilot study. X2 can be binanPilot by 1 vector of indicators indicating if a subject is
failure (failureFlag=1) or alive (failureFlag=0).Suppose we want to check if the hazard of $X_1=1$ is equal to the hazard of $X_1=0$ or not. Equivalently, we want to check if the hazard ratio of $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 p (1-p) \psi (1-\rho^2)}\right),$$ where $\psi$ is the proportion of subjects died of the disease of interest, and $$\rho=corr(X_1, X_2)=(p_1-p_0)\times \sqrt{\frac{q(1-q)}{p(1-p)}},$$ and $p=Pr(X_1=1)$, $q=Pr(X_2=1)$, $p_0=Pr(X_1=1|X_2=0)$, and $p_1=Pr(X_1=1 | X_2=1)$.
$p$, $\rho^2$, and $\psi$ will be estimated from a pilot data set.
Latouche A., Porcher R. and Chevret S. (2004). Sample size formula for proportional hazards modelling of competing risks. Statistics in Medicine. 23:3263-3274.
powerEpi.default# generate a toy pilot data set
X1 <- c(rep(1, 39), rep(0, 61))
set.seed(123456)
X2 <- sample(c(0, 1), 100, replace = TRUE)
failureFlag <- sample(c(0, 1), 100, prob = c(0.5, 0.5), replace = TRUE)
powerEpi(X1 = X1, X2 = X2, failureFlag = failureFlag,
n = 139, theta = 2, alpha = 0.05)Run the code above in your browser using DataLab