View source: R/pwepowerfindt.R
pwepowerfindt | R Documentation |
This will calculate the timepoint where a certain power of the specified test statistics is obtained accouting for staggered entry, delayed treatment effect, treatment crossover and loss to follow-up.
pwepowerfindt(power=0.9,alpha=0.05,twosided=1,tupp=5,tlow=1,taur=1.2,
u=c(1/taur,1/taur),ut=c(taur/2,taur),pi1=0.5,
rate11=c(1,0.5),rate21=rate11,rate31=c(0.7,0.4),
rate41=rate21,rate51=rate21,ratec1=c(0.5,0.6),
rate10=rate11,rate20=rate10,rate30=rate31,
rate40=rate20,rate50=rate20,ratec0=c(0.6,0.5),
tchange=c(0,1),type1=1,type0=1,
rp21=0.5,rp20=0.5,eps=1.0e-2,veps=1.0e-2,
epsbeta=1.0e-04,iterbeta=25,
n=1000,testtype=1,maxiter=20,itereps=0.001)
power |
the desired power |
alpha |
type-1 error |
twosided |
twoside test or not |
tupp |
an upper time point where the power should be larger than |
tlow |
a lower time point where the power should be smaller than |
taur |
recruitment time |
u |
Piecewise constant recuitment rate |
ut |
Recruitment intervals |
pi1 |
Allocation probability for the treatment group |
rate11 |
Hazard before crossover for the treatment group |
rate21 |
Hazard after crossover for the treatment group |
rate31 |
Hazard for time to crossover for the treatment group |
rate41 |
Hazard after crossover for the treatment group for complex case |
rate51 |
Hazard after crossover for the treatment group for complex case |
ratec1 |
Hazard for time to censoring for the treatment group |
rate10 |
Hazard before crossover for the control group |
rate20 |
Hazard after crossover for the control group |
rate30 |
Hazard for time to crossover for the control group |
rate40 |
Hazard after crossover for the control group for complex case |
rate50 |
Hazard after crossover for the control group for complex case |
ratec0 |
Hazard for time to censoring for the control group |
tchange |
A strictly increasing sequence of time points at which the event rates changes. The first element of tchange must be zero. It must have the same length as |
type1 |
Type of crossover in the treatment group |
type0 |
Type of crossover in the control group |
rp21 |
re-randomization prob in the treatment group |
rp20 |
re-randomization prob in the control group |
eps |
error tolerence |
veps |
error tolenrence for calculating variance |
epsbeta |
error tolerance for calculating overall log HR |
iterbeta |
maximum number of iterations for calculating overall log HR |
n |
total number of subjects |
testtype |
test statistics, =1 log-rank;=2 Cox model; =3 log-rank with robust variance |
maxiter |
maximum number of bi-section iterations |
itereps |
error tolerance of |
The hazard functions corresponding to rate11
,...,rate51
,ratec1
, rate10
,...,rate50
,ratec0
are all piecewise constant function taking the form \lambda(t)=\sum_{j=1}^m \lambda_j I(t_{j-1}\le t<t_j)
, where \lambda_1,\ldots,\lambda_m
are the corresponding elements of the rates and t_0,\ldots,t_{m-1}
are the corresponding elements of tchange, t_m=\infty
. Note that all the rates must have the same tchange
.
testtype |
type of statistic, =1 log-rank;=2 Cox model; =3 log-rank with robust variance |
time |
time calculated when the iterations stop |
power |
the power at |
err |
distance from the desired power |
k |
number of bi-section iterations performed |
Version 1.0 (7/19/2016)
Xiaodong Luo
Luo, et al. (2017)
pwe
,rpwe
,qpwe
,ovbeta
,innervar
t<-seq(3,6,by=1)
taur<-1.2
u<-c(1/taur,1/taur)
ut<-c(taur/2,taur)
r11<-c(0.2,0.1)
r21<-r11
r31<-c(0.03,0.02)
r41<-r51<-r21
rc1<-c(0.01,0.02)
r10<-c(0.2,0.2)
r20<-r10
r30<-c(0.02,0.01)
r40<-r50<-r20
rc0<-c(0.02,0.01)
getpower<-pwepower(t=t,alpha=0.05,twosided=1,taur=taur,u=u,ut=ut,pi1=0.5,
rate11=r11,rate21=r21,rate31=r31,rate41=r41,rate51=r51,ratec1=rc1,
rate10=r10,rate20=r20,rate30=r30,rate40=r40,rate50=r50,ratec0=rc0,
tchange=c(0,1),type1=1,type0=1,n=1000)
###powers at each time point
cbind(t,getpower$power[,1:3])
###90% power should be in (3,3.5)
getpwtime<-pwepowerfindt(power=0.9,alpha=0.05,twosided=1,tupp=3.5,tlow=3,taur=taur,
u=u,ut=ut,pi1=0.5,rate11=r11,rate21=r21,rate31=r31,rate41=r41,rate51=r51,ratec1=rc1,
rate10=r10,rate20=r20,rate30=r30,rate40=r40,rate50=r50,ratec0=rc0,
tchange=c(0,1),type1=1,type0=1,n=1000,testtype=1,maxiter=30)
getpwtime
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.