stepdown.update: Update the stopping boundaries of multi-arm multi-stage study...

View source: R/stepdown.update.R

stepdown.updateR Documentation

Update the stopping boundaries of multi-arm multi-stage study at an interim analysis, allowing for unplanned treatment selection and/or sample-size reassessment.

Description

Function to update a planned multi-arm multi-stage design to account for unplanned adaptations.

Usage

stepdown.update(current.mams=stepdown.mams(), nobs=NULL, 
                zscores=NULL, selected.trts=NULL, nfuture=NULL)

Arguments

current.mams

The planned step-down MAMS design prior to the current interim analysis (=defaultstepdown.mams()).

nobs

Cumulative sample sizes observed on each treatment arm up to and including the current interim analysis.

zscores

Observed vector of test statistics at the current interim analysis.

selected.trts

The set of experimental treatments to be taken forward to the next stage of testing. This argument should be omitted at the final analysis.

nfuture

A matrix of future cumulative sample sizes. The number of rows must be equal to the originally planned number of stages (2 or 3) minus the number of stages already observed. The number of columns must be equal to the number of treatment arms (default=NULL).

Details

The function implements the ideas described in Magirr et al. (2014) to update a design according to unplanned design modifications. It takes as input the planned multi-arm multi-stage design prior to the interim analysis, together with the actually observed cumulative sample sizes and test statistics. Treatments to be included in future stages, as well as future sample sizes, can be chosen without following pre-specified rules. The output is a new multi-arm multi-stage design for the remaining stages such that the familywise error remains controlled at the pre-specified level.

Value

An object of the class MAMS.stepdown containing the following components:

l

Lower boundaries.

u

Upper boundaries.

sample.sizes

Cumulative sample sizes on each treatment arm.

K

Number of experimental treatments.

J

Number of stages in the trial.

alpha.star

Cumulative familywise error rate spent at each analysis, conditional on results so far.

selection

Pre-specified method of treatment selection.

zscores

A list containing the observed test statistics at analyses so far (at the design stage this is NULL).

selected.trts

A list containing the treatments selected for each stage.

Author(s)

Dominic Magirr

References

Jaki T., Pallmann P. and Magirr D. (2019), The R Package MAMS for Designing Multi-Arm Multi-Stage Clinical Trials, Journal of Statistical Software, 88(4), 1-25. Link: \Sexpr[results=rd]{tools:::Rd_expr_doi("10.18637/jss.v088.i04")}

Magirr D., Jaki T. and Whitehead J. (2012), A generalized Dunnett test for multi-arm multi-stage clinical studies with treatment selection, Biometrika, 99(2), 494-501. Link: \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1093/biomet/ass002")}

Magirr D., Stallard N. and Jaki T. (2014), Flexible sequential designs for multi-arm clinical trials, Statistics in Medicine, 33(19), 3269-3279. Link: \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1002/sim.6183")}

Stallard N. and Todd S. (2003), Sequential designs for phase III clinical trials incorporating treatment selection, Statistics in Medicine, 22(5), 689-703.

See Also

print.MAMS.stepdown, summary.MAMS.stepdown, plot.MAMS.stepdown, stepdown.mams, MAMS.

Examples


# 2-stage 3-treatments versus control design
# all promising treatments are selected:
orig_mams <- stepdown.mams(nMat=matrix(c(10, 20), nrow=2, ncol=4), 
                           alpha.star=c(0.01, 0.05), lb=0, 
                           selection="all.promising")

# make adjustment for the observed sample sizes 
# not being exactly as planned:
stepdown.update(orig_mams, nobs=c(9, 8, 13, 11), zscores=c(1.1, -0.5, 0.2), 
                selected.trts=1:3, nfuture=NULL)

# make adjustment for the observed sample sizes 
# not being exactly as planned. In addition, drop treatment 2:
stepdown.update(orig_mams, nobs=c(9, 8, 13, 11), zscores=c(1.1, -0.5, 0.2), 
                selected.trts=c(1, 3), nfuture=NULL)

# make adjustment for the observed sample sizes not being 
# exactly as planned. In addition, drop treatment 2. In addition, 
# double the planed cumulative second stage sample sizes:
updated_mams <- stepdown.update(orig_mams, nobs=c(9, 8, 13, 11), 
                                 zscores=c(1.1, -0.5, 0.2), selected.trts=c(1, 3), 
                                 nfuture=matrix(c(40, 40, 13, 40), nrow=1, ncol=4))

# Account for the observed second stage sample sizes:
stepdown.update(updated_mams, nobs=c(38, 41, 13, 36), zscores=c(1.9, -Inf, 1.2), 
                selected.trts=NULL)

# 'select.best' design. Account for actually observed sample sizes 
# in first stage, and drop treatment 2:
orig_mams <- stepdown.mams(nMat=matrix(c(10, 20), nrow=2, ncol=4), 
                           alpha.star=c(0.01, 0.05), lb=0, selection="select.best")

stepdown.update(orig_mams, nobs=c(9, 8, 13, 11), zscores=c(1.1, -0.5, 0.2), 
                selected.trts=c(1, 3), nfuture=NULL)

MAMS documentation built on April 18, 2023, 5:08 p.m.