Obtains the maximum information and stopping boundaries for a generic group sequential design with futility stopping under the null hypothesis assuming a constant treatment effect, or obtains the power given the maximum information and stopping boundaries.
getDesign2(
beta = NA_real_,
IMax = NA_real_,
theta = NA_real_,
kMax = 1L,
informationRates = NA_real_,
efficacyStopping = NA_integer_,
futilityStopping = NA_integer_,
criticalValues = NULL,
alpha = 0.025,
typeAlphaSpending = "sfOF",
parameterAlphaSpending = NA_real_,
userAlphaSpending = NA_real_,
symmetricBounds = TRUE,
astar = 0.025,
futilityBounds = NULL,
typeBetaSpending = "none",
parameterBetaSpending = NA_real_,
userBetaSpending = NA_real_,
spendingTime = NA_real_,
varianceRatio = 1
)An S3 class design object with three components:
overallResults: A data frame containing the following variables:
overallReject: The overall rejection probability.
alpha: The overall significance level.
attainedAlpha: The attained significance level, which is
different from the overall significance level in the presence of
futility stopping.
astar: The overall futility stopping probability under the
null hypothesis.
kMax: The number of stages.
theta: The parameter value.
information: The maximum information.
expectedInformationH1: The expected information under H1.
expectedInformationH0: The expected information under H0.
drift: The drift parameter, equal to
theta*sqrt(information).
inflationFactor: The inflation factor (relative to the
fixed design).
byStageResults: A data frame containing the following variables:
informationRates: The information rates.
efficacyBounds: The efficacy boundaries on the Z-scale.
futilityBounds: The futility boundaries on the Z-scale.
rejectPerStage: The probability for efficacy stopping.
futilityPerStage: The probability for futility stopping.
cumulativeRejection: The cumulative probability for efficacy
stopping.
cumulativeFutility: The cumulative probability for futility
stopping.
cumulativeAlphaSpent: The cumulative alpha spent.
efficacyTheta: The efficacy boundaries on the parameter
scale.
futilityTheta: The futility boundaries on the parameter
scale.
efficacyP: The efficacy boundaries on the p-value scale.
futilityP: The futility boundaries on the p-value scale.
information: The cumulative information.
efficacyStopping: Whether to allow efficacy stopping.
futilityStopping: Whether to allow futility stopping.
rejectPerStageH0: The probability for efficacy stopping
under H0.
futilityPerStageH0: The probability for futility stopping
under H0.
cumulativeRejectionH0: The cumulative probability for
efficacy stopping under H0.
cumulativeFutilityH0: The cumulative probability for
futility stopping under H0.
settings: A list containing the following input parameters:
typeAlphaSpending: The type of alpha spending.
parameterAlphaSpending: The parameter value for alpha
spending.
userAlphaSpending: The user defined alpha spending.
typeBetaSpending: The type of beta spending.
parameterBetaSpending: The parameter value for beta
spending.
userBetaSpending: The user defined beta spending.
spendingTime: The error spending time at each analysis.
varianceRatio: The ratio of the variance under H0
to the variance under H1.
The type II error.
The maximum information. Either beta or IMax
should be provided while the other one should be missing.
The parameter value. Null hypothesis is at theta = 0,
and the alternative hypothesis is one-sided for theta > 0.
The maximum number of stages.
The information rates. Fixed prior to the trial.
Defaults to (1:kMax) / kMax if left unspecified.
Indicators of whether efficacy stopping is allowed
at each stage. Defaults to TRUE if left unspecified.
Indicators of whether futility stopping is allowed
at each stage. Defaults to TRUE if left unspecified.
Upper boundaries on the z-test statistic scale for stopping for efficacy.
The significance level. Defaults to 0.025.
The type of alpha spending. One of the following:
"OF" for O'Brien-Fleming boundaries,
"P" for Pocock boundaries,
"WT" for Wang & Tsiatis boundaries,
"sfOF" for O'Brien-Fleming type spending function,
"sfP" for Pocock type spending function,
"sfKD" for Kim & DeMets spending function,
"sfHSD" for Hwang, Shi & DeCani spending function,
"user" for user defined spending, and
"none" for no early efficacy stopping.
Defaults to "sfOF".
The parameter value for the alpha spending.
Corresponds to \(\Delta\) for "WT", \(\rho\) for "sfKD",
and \(\gamma\) for "sfHSD".
The user defined alpha spending. Cumulative alpha spent up to each stage.
If TRUE, futility bounds are set to the
negative of efficacy bounds at each analysis (subject to
futilityStopping). If FALSE, futility bounds are
determined by futilityBounds or beta spending.
The overall futility stopping probability under the null hypothesis.
A vector of length kMax for the futility
stopping boundaries on the Z-scale under the null hypothesis.
Defaults to rep(-8, kMax) if left unspecified. The futility bounds
are non-binding for the calculation of critical values.
The type of beta spending function for determining
futility bounds under the null hypothesis when futilityBounds is
not provided. The same types as typeAlphaSpending are allowed,
except that "none" corresponds to no futility stopping under
the null hypothesis.
The parameter for the beta spending function.
Corresponds to \(\Delta\) for "WT", \(\rho\) for "sfKD",
and \(\gamma\) for "sfHSD".
A vector of length kMax for the user
defined beta spending function when typeBetaSpending == "user".
The last element must be equal to astar and the vector must be
increasing.
A vector of length kMax for the error spending
time at each analysis. Defaults to missing, in which case, it is the
same as informationRates.
The ratio of the variance under H0 to the variance under H1.
Kaifeng Lu, kaifenglu@gmail.com
The futility stopping boundaries under the null hypothesis are non-binding. The function determines efficacy and futility bounds based on the inputs provided, following a clear priority order.
Efficacy bounds:
If criticalValues are supplied, they take precedence and all
alpha-spending parameters are ignored. Otherwise, efficacy bounds are
derived from the specified alpha-spending function.
Futility bounds: Futility inputs are evaluated in the following order of priority:
If futilityBounds are provided, they override
beta-spending parameters.
If futilityBounds are not
specified, futility bounds are computed using the beta-spending approach
with astar being the maximum futility stopping probability under
the null hypothesis. If typeBetaSpending == "none",
then there is no futility stopping under the null hypothesis.
If symmetricBounds = TRUE, the futility bounds are set to
-efficacyBounds and beta-spending inputs are ignored.
Christopher Jennison, Bruce W. Turnbull. Group Sequential Methods with Applications to Clinical Trials. Chapman & Hall/CRC: Boca Raton, 2000, ISBN:0849303168
(design1 <- getDesign2(
beta = 0.149, theta = -log(0.65),
kMax = 2, informationRates = c(0.87, 1),
alpha = 0.004, typeAlphaSpending = "sfOF",
astar = 0.1, typeBetaSpending = "sfHSD",
parameterBetaSpending = -8))
Run the code above in your browser using DataLab