Performs simulation for two-arm group sequential trials based on weighted log-rank test.
lrsim(
kMax = 1L,
informationRates = NA_real_,
criticalValues = NA_real_,
futilityBounds = NA_real_,
hazardRatioH0 = 1,
allocation1 = 1L,
allocation2 = 1L,
accrualTime = 0L,
accrualIntensity = NA_real_,
piecewiseSurvivalTime = 0L,
stratumFraction = 1L,
lambda1 = NA_real_,
lambda2 = NA_real_,
gamma1 = 0L,
gamma2 = 0L,
accrualDuration = NA_real_,
followupTime = NA_real_,
fixedFollowup = 0L,
rho1 = 0,
rho2 = 0,
plannedEvents = NA_integer_,
plannedTime = NA_real_,
maxNumberOfIterations = 1000L,
maxNumberOfRawDatasetsPerStage = 0L,
seed = NA_integer_
)
An S3 class lrsim
object with 3 components:
overview
: A list containing the following information:
rejectPerStage
: The efficacy stopping probability by stage.
futilityPerStage
: The futility stopping probability by
stage.
cumulativeRejection
: Cumulative efficacy stopping
probability by stage.
cumulativeFutility
: The cumulative futility stopping
probability by stage.
numberOfEvents
: The average number of events by stage.
numberOfDropouts
: The average number of dropouts by stage.
numberOfSubjects
: The average number of subjects by stage.
analysisTime
: The average analysis time by stage.
overallReject
: The overall rejection probability.
expectedNumberOfEvents
: The expected number of events for
the overall study.
expectedNumberOfDropouts
: The expected number of dropouts
for the overall study.
expectedNumberOfSubjects
: The expected number of subjects
for the overall study.
expectedStudyDuration
: The expected study duration.
hazardRatioH0
: Hazard ratio under the null hypothesis for
the active treatment versus control.
useEvents
: whether the analyses are planned
based on the number of events or calendar time.
accrualDuration
: Duration of the enrollment period.
fixedFollowup
: Whether a fixed follow-up design is used.
rho1
: The first parameter of the Fleming-Harrington family
of weighted log-rank test. Defaults to 0 for conventional log-rank
test.
rho2
: The second parameter of the Fleming-Harrington family
of weighted log-rank test. Defaults to 0 for conventional log-rank
test.
kMax
: The maximum number of stages.
sumdata
: A data frame of summary data by iteration and stage:
iterationNumber
: The iteration number.
stopStage
: The stage at which the trial stops.
eventsNotAchieved
: Whether the target number of events
is not achieved for the iteration.
stageNumber
: The stage number, covering all stages even if
the trial stops at an interim look.
analysisTime
: The time for the stage since trial start.
accruals1
: The number of subjects enrolled at the stage for
the treatment group.
accruals2
: The number of subjects enrolled at the stage for
the control group.
totalAccruals
: The total number of subjects enrolled at
the stage.
events1
: The number of events at the stage for
the treatment group.
events2
: The number of events at the stage for
the control group.
totalEvents
: The total number of events at the stage.
dropouts1
: The number of dropouts at the stage for
the treatment group.
dropouts2
: The number of dropouts at the stage for
the control group.
totalDropouts
: The total number of dropouts at the stage.
uscore
: The numerator of the log-rank test statistic.
vscore
: The variance of the log-rank test statistic.
logRankStatistic
: The log-rank test Z-statistic.
rejectPerStage
: Whether to reject the null hypothesis
at the stage.
futilityPerStage
: Whether to stop the trial for futility
at the stage.
rawdata
(exists if maxNumberOfRawDatasetsPerStage
is a
positive integer): A data frame for subject-level data for selected
replications, containing the following variables:
iterationNumber
: The iteration number.
stopStage
: The stage at which the trial stops.
analysisTime
: The time for the stage since trial start.
subjectId
: The subject ID.
arrivalTime
: The enrollment time for the subject.
stratum
: The stratum for the subject.
treatmentGroup
: The treatment group (1 or 2) for the
subject.
survivalTime
: The underlying survival time for the subject.
dropoutTime
: The underlying dropout time for the subject.
timeUnderObservation
: The time under observation
since randomization.
event
: Whether the subject experienced the event.
dropoutEvent
: Whether the subject dropped out.
The maximum number of stages.
The information rates in terms of number
of events for the conventional log-rank test and in terms of
the actual information for weighted log-rank tests.
Fixed prior to the trial. If left unspecified, it defaults to
plannedEvents / plannedEvents[kMax]
when plannedEvents
is provided and to plannedTime / plannedTime[kMax]
otherwise.
Upper boundaries on the z-test statistic scale for stopping for efficacy.
Lower boundaries on the z-test statistic scale
for stopping for futility at stages 1, ..., kMax-1
. Defaults to
rep(-6, kMax-1)
if left unspecified. The futility bounds are
non-binding for the calculation of critical values.
Hazard ratio under the null hypothesis for the active treatment versus control. Defaults to 1 for superiority test.
Number of subjects in the active treatment group in a randomization block. Defaults to 1 for equal randomization.
Number of subjects in the control group in a randomization block. Defaults to 1 for equal randomization.
A vector that specifies the starting time of
piecewise Poisson enrollment time intervals. Must start with 0, e.g.,
c(0, 3)
breaks the time axis into 2 accrual intervals:
[0, 3) and [3, Inf).
A vector of accrual intensities. One for each accrual time interval.
A vector that specifies the starting time of
piecewise exponential survival time intervals. Must start with 0, e.g.,
c(0, 6)
breaks the time axis into 2 event intervals:
[0, 6) and [6, Inf).
Defaults to 0 for exponential distribution.
A vector of stratum fractions that sum to 1. Defaults to 1 for no stratification.
A vector of hazard rates for the event in each analysis time interval by stratum for the active treatment group.
A vector of hazard rates for the event in each analysis time interval by stratum for the control group.
The hazard rate for exponential dropout, a vector of hazard rates for piecewise exponential dropout applicable for all strata, or a vector of hazard rates for dropout in each analysis time interval by stratum for the active treatment group.
The hazard rate for exponential dropout, a vector of hazard rates for piecewise exponential dropout applicable for all strata, or a vector of hazard rates for dropout in each analysis time interval by stratum for the control group.
Duration of the enrollment period.
Follow-up time for the last enrolled subject.
Whether a fixed follow-up design is used. Defaults to 0 for variable follow-up.
The first parameter of the Fleming-Harrington family of weighted log-rank test. Defaults to 0 for conventional log-rank test.
The second parameter of the Fleming-Harrington family of weighted log-rank test. Defaults to 0 for conventional log-rank test.
The planned cumulative total number of events at each stage.
The calendar times for the analyses. To use calendar
time to plan the analyses, plannedEvents
should be missing.
The number of simulation iterations. Defaults to 1000.
The number of raw datasets per stage to extract.
The seed to reproduce the simulation results. The seed from the environment will be used if left unspecified.
Kaifeng Lu, kaifenglu@gmail.com
# Example 1: analyses based on number of events
sim1 = lrsim(kMax = 2, informationRates = c(0.5, 1),
criticalValues = c(2.797, 1.977),
accrualIntensity = 11,
lambda1 = 0.018, lambda2 = 0.030,
accrualDuration = 12,
plannedEvents = c(60, 120),
maxNumberOfIterations = 1000,
maxNumberOfRawDatasetsPerStage = 1,
seed = 314159)
# summary statistics
sim1
# summary for each simulated data set
head(sim1$sumdata)
# raw data for selected replication
head(sim1$rawdata)
# Example 2: analyses based on calendar time have similar power
sim2 = lrsim(kMax = 2, informationRates = c(0.5, 1),
criticalValues = c(2.797, 1.977),
accrualIntensity = 11,
lambda1 = 0.018, lambda2 = 0.030,
accrualDuration = 12,
plannedTime = c(31.9, 113.2),
maxNumberOfIterations = 1000,
maxNumberOfRawDatasetsPerStage = 1,
seed = 314159)
# summary statistics
sim2
# summary for each simulated data set
head(sim2$sumdata)
Run the code above in your browser using DataLab