executeSP23Design: Given a design object, interim data and the current calendar...

View source: R/sp23design.R

executeSP23DesignR Documentation

Given a design object, interim data and the current calendar time, conduct the interim analysis for the time

Description

This function is designed to be used in the field. Assuming a particular design is chosen, it conducts the interim analysis for a specific calendar time and provides the means for deciding whether to stop for futility or efficacy.

Usage

executeSP23Design(sp23DesignObject, data, currentCalendarTime)

Arguments

sp23DesignObject

A seamless phase II-III design object, typically one produced by the generateSP23Design function

data

The interim data, something akin to that produced by the function generateInterimData

currentCalendarTime

The current calendar time of the interim data. This better be one of the specified interim looks, or the function stops.

Details

This function is designed to be used in the field, although there are parts of it that are currently problematic. For example, in the field, there is typically no inkling of a responder or non-responder and yet the function as it currently stands is too wedded to the simulation scenario. Not hard to fix though.

Value

A vector of quantities is returned.

m0

number on control arm

m1

number on treatment arm

y0

number of responses in control

y1

number of responses in treatment

pi0Hat

estimate of the proportion of responders among control

pi1Hat

estimate of the proportion of responders among treatment

pi0HatH0

estimate of the proportion of responders among control under H_0

pi1HatH0

estimate of the proportion of responders among control under H_0

pi0HatH1

estimate of the proportion of responders among control under H_1

pi1HatH1

estimate of the proportion of responders among control under H_1

glrRespH0

estimate of the generalized likelihood ratio statistic for response under H_0

glrRespH1

estimate of the generalized likelihood ratio statistic for response under H_1

glrSurvH0

estimate of the generalized likelihood ratio statistic for survival under H_0

glrSurvH1

estimate of the generalized likelihood ratio statistic for survival under H_1

alphaHat

the estimate of α

alphaHatH0

the estimate of α under H_0

alphaHatH1

the estimate of α under H_1

betaHat

the estimate of β

betaHatH0

the estimate of β under H_0

betaHatH1

the estimate of β under H_1

gammaHat

the estimate of γ

gammaHatH0

the estimate of γ under H_0

gammaHatH1

the estimate of γ under H_1

hazard

the estimate of d

v

the estimate of Γ_t

rejectH0R

a flag indicating if $H_0^R$ was rejected at the interim look

acceptH0R

a flag indicating if $H_0^R$ was accepted (futility) at the interim look

rejectH0S

a flag indicating if $H_0^S$ was rejected at the interim look

acceptH0S

a flag indicating if $H_0^S$ was accepted (futility) at the interim look

b.metas.Last

the last Haybittle-Peto boundary for the survival end-point, if computed

Author(s)

Mei-Chiung Shih, Balasubramanian Narasimhan, Pei He

References

Lai, Tze Leung and Lavori, Philip W. and Shih, Mei-Chiung. Sequential Design of Phase II-III Cancer Trials, Statistics in Medicine, Volume 31, issue 18, p.1944-1960, 2012.

Examples

## Not run: 
  trialParameters <- list(minimumNumberOfEvents = 20,
                              minimumIncreaseInV = 0.2,
                              numberRecruitedEachYear = c(80, 120, 160, 160),
                              followupTime = 3,
                              adminCensoringTime = 7,
                              interimLookTime = c(1, 2, 3, 5, 7),
                              type1ErrorForResponse = 0.05,
                              type2ErrorForResponse = 0.01,
                              glrBoundarySidedness = "one", # one sided or two-sided
                              type1Error = 0.05,
                              type2Error = 0.10,
                              epsType1 = 1/3,
                              epsType2 = 1/3)

  trueParameters <- list(p0 = 0.3,
                             p1 = 0.3,
                             pdiffHyp=0.3,
                             theta = list(
                                     alpha = 0,
                                     beta = 0,
                                     gamma = 0),
                             baselineLambda = 0.35,
                             etaHyp = 0.25)
  rngSeed <- 9872831

  sp23Design <- generateSP23Design(trueParameters, trialParameters)
  d <- generateClinicalTrialData(nRec = trialParameters$numberRecruitedEachYear,
                                 nFUp = trialParameters$followupTime,
                                 pi0 = trueParameters$p0,
                                 pi1 = trueParameters$p1,
                                 theta = trueParameters$theta,
                                 lambda0 = trueParameters$baselineLambda)
  result <- executeSP23Design(sp23Design, d, trialParameters$interimLookTime[2])

## End(Not run)

sp23design documentation built on April 19, 2022, 5:08 p.m.