View source: R/postMonitoring.R
| rankTrial | R Documentation |
rankTrial assesses the probability of correctly selecting the winning most efficacious (individual and/or pooled) treatment arm, and assesses power to detect relative treatment efficacy in head-to-head comparisons of (individual and/or pooled) treatment arms.
rankTrial( censFile, idxHighestVE, headHead = NULL, poolHead = NULL, lowerVE, stage1, stage2, alpha, saveDir = NULL, verbose = TRUE )
censFile |
if |
idxHighestVE |
an integer value identifying the treatment (vaccine) arm with the true highest VE(0– |
headHead |
a matrix ( |
poolHead |
a matrix ( |
lowerVE |
a numeric value defining a ‘winning’ treatment arm as one with sufficient evidence for rejecting the null hypothesis H0: VE(0– |
stage1 |
the final week of stage 1 in a two-stage trial |
stage2 |
the final week of stage 2 in a two-stage trial, i.e., the maximum follow-up time |
alpha |
one minus the nominal confidence level of the two-sided confidence interval used for testing a null hypothesis H0: VE(0– |
saveDir |
a character string specifying a path for |
verbose |
a logical value indicating whether information on the output directory and file name should be printed out (default is |
All time variables use week as the unit of time. Month is defined as 52/12 weeks.
The probability of correct treatment selection is defined as the probability that the treatment arm with the highest estimated VE(0–stage2) is the one with the true highest VE(0–stage2) and, for this treatment arm, the null hypothesis H0: VE(0–stage1) ≤ lowerVE x 100% is rejected. If poolHead is specified, the probability of correct pooled treatment selection is assessed for each set of two pooled treatment arms.
VE(0–t) is estimated as one minus the ratio of Nelson-Aalen-based cumulative incidence functions. The null hypothesis H0: VE(0–t) ≤ b x 100% is rejected if the lower bound of the two-sided (1-alpha) x 100% confidence interval for VE(0–t) lies above b.
For head-to-head individual and pooled treatment comparisons, powers to reject the null hypotheses that relative VE(0–stage1) ≤ 0% and relative VE(0–stage2) ≤ 0% are assessed using the aforementioned testing rule.
If saveDir is specified, the output list (named out) is saved as an .RData file in saveDir (the path to saveDir is printed); otherwise it is returned. The output object is a list with the following components:
rankSelectPw: the probability of correct selection of the winning most efficacious individual treatment
headHeadPw: if headHead is specified, a matrix of powers to detect relative VE(0–stage1) (column 1) and relative VE(0–stage2) (column 2) in head-to-head comparisons of individual treatment arms
poolRankSelectPw: if poolHead is specified, a numeric vector of the probabilities of correct selection of the winning most efficacious pooled treatment for each set of pooled treatments
poolHeadPw: if poolHead is specified, a matrix of powers to detect relative VE(0–stage1) (column 1) and relative VE(0–stage2) (column 2) in head-to-head comparisons of pooled treatment arms
simTrial, monitorTrial, and censTrial
simData <- simTrial(N=c(1000, rep(700, 2)), aveVE=seq(0, 0.4, by=0.2),
VEmodel="half", vePeriods=c(1, 27, 79), enrollPeriod=78,
enrollPartial=13, enrollPartialRelRate=0.5, dropoutRate=0.05,
infecRate=0.04, fuTime=156,
visitSchedule=c(0, (13/3)*(1:4), seq(13*6/3, 156, by=13*2/3)),
missVaccProb=c(0,0.05,0.1,0.15), VEcutoffWeek=26, nTrials=5,
stage1=78, randomSeed=300)
monitorData <- monitorTrial(dataFile=simData, stage1=78, stage2=156,
harmMonitorRange=c(10,100), alphaPerTest=NULL,
nonEffStartMethod="FKG", nonEffInterval=20,
lowerVEnoneff=0, upperVEnoneff=0.4,
highVE=0.7, stage1VE=0, lowerVEuncPower=0,
alphaNoneff=0.05, alphaHigh=0.05, alphaStage1=0.05,
alphaUncPower=0.05, estimand="cuminc", lagTime=26)
censData <- censTrial(dataFile=simData, monitorFile=monitorData, stage1=78, stage2=156)
rankData <- rankTrial(censFile=censData, idxHighestVE=2,
headHead=matrix(2:1, nrow=1, ncol=2), lowerVE=0, stage1=78,
stage2=156, alpha=0.05)
### alternatively, to save the .RData output file (no '<-' needed):
###
### simTrial(N=c(1400, rep(1000, 2)), aveVE=seq(0, 0.4, by=0.2), VEmodel="half",
### vePeriods=c(1, 27, 79), enrollPeriod=78, enrollPartial=13,
### enrollPartialRelRate=0.5, dropoutRate=0.05, infecRate=0.04, fuTime=156,
### visitSchedule=c(0, (13/3)*(1:4), seq(13*6/3, 156, by=13*2/3)),
### missVaccProb=c(0,0.05,0.1,0.15), VEcutoffWeek=26, nTrials=30,
### stage1=78, saveDir="./", randomSeed=300)
###
### monitorTrial(dataFile=
### "simTrial_nPlac=1400_nVacc=1000_1000_aveVE=0.2_0.4_infRate=0.04.RData",
### stage1=78, stage2=156, harmMonitorRange=c(10,100), alphaPerTest=NULL,
### nonEffStartMethod="FKG", nonEffInterval=20,
### lowerVEnoneff=0, upperVEnoneff=0.4, highVE=0.7, stage1VE=0,
### lowerVEuncPower=0, alphaNoneff=0.05, alphaHigh=0.05, alphaStage1=0.05,
### alphaUncPower=0.05, estimand="cuminc", lagTime=26, saveDir="./")
###
### censTrial(dataFile=
### "simTrial_nPlac=1400_nVacc=1000_1000_aveVE=0.2_0.4_infRate=0.04.RData",
### monitorFile=
### "monitorTrial_nPlac=1400_nVacc=1000_1000_aveVE=0.2_0.4_infRate=0.04_cuminc.RData",
### stage1=78, stage2=156, saveDir="./")
###
### rankTrial(censFile=
### "trialDataCens_nPlac=1400_nVacc=1000_1000_aveVE=0.2_0.4_infRate=0.04_cuminc.RData",
### idxHighestVE=2, headHead=matrix(2:1, nrow=1, ncol=2), lowerVE=0, stage1=78,
### stage2=156, alpha=0.05, saveDir="./")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.