% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/RcppExports.R
\name{adaptDesign}
\alias{adaptDesign}
\title{Adaptive Design at an Interim Look}
\usage{
adaptDesign(
  betaNew = NA_real_,
  INew = NA_real_,
  L = NA_integer_,
  zL = NA_real_,
  theta = NA_real_,
  IMax = NA_real_,
  kMax = NA_integer_,
  informationRates = NA_real_,
  efficacyStopping = NA_integer_,
  futilityStopping = NA_integer_,
  criticalValues = NULL,
  alpha = 0.025,
  typeAlphaSpending = "sfOF",
  parameterAlphaSpending = NA_real_,
  userAlphaSpending = NA_real_,
  futilityBounds = NULL,
  futilityCP = NULL,
  futilityTheta = NULL,
  spendingTime = NA_real_,
  MullerSchafer = FALSE,
  kNew = NA_integer_,
  informationRatesNew = NA_real_,
  efficacyStoppingNew = NA_integer_,
  futilityStoppingNew = NA_integer_,
  typeAlphaSpendingNew = "sfOF",
  parameterAlphaSpendingNew = NA_real_,
  futilityBoundsInt = NULL,
  futilityCPInt = NULL,
  futilityThetaInt = NULL,
  typeBetaSpendingNew = "none",
  parameterBetaSpendingNew = NA_real_,
  userBetaSpendingNew = NA_real_,
  spendingTimeNew = NA_real_,
  varianceRatio = 1
)
}
\arguments{
\item{betaNew}{The type II error for the secondary trial.}

\item{INew}{The maximum information of the secondary trial. Either
\code{betaNew} or \code{INew} should be provided, while the other
must be missing.}

\item{L}{The interim adaptation look of the primary trial.}

\item{zL}{The z-test statistic at the interim adaptation look of
the primary trial.}

\item{theta}{The assumed parameter value.}

\item{IMax}{The maximum information of the primary trial. Must be provided.}

\item{kMax}{The maximum number of stages of the primary trial.}

\item{informationRates}{The information rates of the primary trial.}

\item{efficacyStopping}{Indicators of whether efficacy stopping is
allowed at each stage of the primary trial. Defaults to \code{TRUE}
if left unspecified.}

\item{futilityStopping}{Indicators of whether futility stopping is
allowed at each stage of the primary trial. Defaults to \code{TRUE}
if left unspecified.}

\item{criticalValues}{The upper boundaries on the z-test statistic scale
for efficacy stopping for the primary trial. If missing, boundaries
will be computed based on the specified alpha spending function.}

\item{alpha}{The significance level of the primary trial.
Defaults to 0.025.}

\item{typeAlphaSpending}{The type of alpha spending for the primary
trial. One of the following:
\code{"OF"} for O'Brien-Fleming boundaries,
\code{"P"} for Pocock boundaries,
\code{"WT"} for Wang & Tsiatis boundaries,
\code{"sfOF"} for O'Brien-Fleming type spending function,
\code{"sfP"} for Pocock type spending function,
\code{"sfKD"} for Kim & DeMets spending function,
\code{"sfHSD"} for Hwang, Shi & DeCani spending function,
\code{"user"} for user defined spending, and
\code{"none"} for no early efficacy stopping.
Defaults to \code{"sfOF"}.}

\item{parameterAlphaSpending}{The parameter value of alpha spending
for the primary trial. Corresponds to \eqn{\Delta} for \code{"WT"},
\eqn{\rho} for \code{"sfKD"}, and \eqn{\gamma} for \code{"sfHSD"}.}

\item{userAlphaSpending}{The user-defined alpha spending for the
primary trial. Represents the cumulative alpha spent up to each stage.}

\item{futilityBounds}{The lower boundaries on the z-test statistic scale
for futility stopping for the primary trial. Defaults to
\code{rep(-8, kMax-1)} if left unspecified.}

\item{futilityCP}{The conditional power-based futility bounds for the
primary trial.}

\item{futilityTheta}{The parameter value-based futility bounds for the
primary trial.}

\item{spendingTime}{The error spending time of the primary trial.
Defaults to missing, in which case it is assumed to be the same as
\code{informationRates}.}

\item{MullerSchafer}{Whether to use the Muller and Schafer (2001) method
for trial adaptation.}

\item{kNew}{The number of looks of the secondary trial.}

\item{informationRatesNew}{The spacing of looks of the secondary trial.}

\item{efficacyStoppingNew}{The indicators of whether efficacy stopping is
allowed at each look of the secondary trial. Defaults to \code{TRUE}
if left unspecified.}

\item{futilityStoppingNew}{The indicators of whether futility stopping is
allowed at each look of the secondary trial. Defaults to \code{TRUE}
if left unspecified.}

\item{typeAlphaSpendingNew}{The type of alpha spending for the secondary
trial. One of the following:
\code{"OF"} for O'Brien-Fleming boundaries,
\code{"P"} for Pocock boundaries,
\code{"WT"} for Wang & Tsiatis boundaries,
\code{"sfOF"} for O'Brien-Fleming type spending function,
\code{"sfP"} for Pocock type spending function,
\code{"sfKD"} for Kim & DeMets spending function,
\code{"sfHSD"} for Hwang, Shi & DeCani spending function, and
\code{"none"} for no early efficacy stopping.
Defaults to \code{"sfOF"}.}

\item{parameterAlphaSpendingNew}{The parameter value of alpha spending
for the secondary trial. Corresponds to \eqn{\Delta} for \code{"WT"},
\eqn{\rho} for \code{"sfKD"}, and \eqn{\gamma} for \code{"sfHSD"}.}

\item{futilityBoundsInt}{The futility boundaries on the z statistic
scale for new stages of the integrated trial.}

\item{futilityCPInt}{The conditional power-based futility bounds for
new stages of the integrated trial.}

\item{futilityThetaInt}{The parameter value-based futility bounds for the
new stages of the integrated trial.}

\item{typeBetaSpendingNew}{The type of beta spending for the secondary
trial. One of the following:
\code{"sfOF"} for O'Brien-Fleming type spending function,
\code{"sfP"} for Pocock type spending function,
\code{"sfKD"} for Kim & DeMets spending function,
\code{"sfHSD"} for Hwang, Shi & DeCani spending function,
\code{"user"} for user defined spending, and
\code{"none"} for no early futility stopping.
Defaults to \code{"none"}.}

\item{parameterBetaSpendingNew}{The parameter value of beta spending
for the secondary trial. Corresponds to \eqn{\rho} for \code{"sfKD"},
and \eqn{\gamma} for \code{"sfHSD"}.}

\item{userBetaSpendingNew}{The user-defined cumulative beta spending.
Represents the cumulative beta spent up to each stage of the
secondary trial.}

\item{spendingTimeNew}{The error spending time of the secondary trial.
Defaults to missing, in which case it is assumed to be the same as
\code{informationRatesNew}.}

\item{varianceRatio}{The ratio of the variance under H0 to the
variance under H1.}
}
\value{
An \code{adaptDesign} object with three list components:
\itemize{
\item \code{primaryTrial}: A list of selected information for the primary
trial, including \code{L}, \code{zL}, \code{theta},
\code{maxInformation}, \code{kMax},
\code{informationRates}, \code{efficacyBounds}, \code{futilityBounds},
\code{information}, \code{alpha}, \code{conditionalAlpha},
\code{conditionalPower}, \code{predictivePower}, and
and \code{MullerSchafer}.
\item \code{secondaryTrial}: A list of selected information for the secondary
trial, including \code{overallReject}, \code{alpha}, \code{kMax},
\code{maxInformation}, \code{informationRates}, \code{efficacyBounds},
\code{futilityBounds}, \code{cumulativeRejection},
\code{cumulativeFutility}, \code{cumulativeAlphaSpent},
\code{information}, \code{typeAlphaSpending},
\code{parameterAlphaSpending}, \code{typeBetaSpending},
\code{parameterBetaSpending}, \code{userBetaSpending}, and
\code{spendingTime}.
\item \code{integratedTrial}: A list of selected information for the integrated
trial, including \code{L}, \code{zL}, \code{theta}, \code{maxInformation},
\code{kMax}, \code{informationRates}, \code{efficacyBounds},
\code{futilityBounds}, and \code{information}.
}
}
\description{
Calculates the conditional power for specified incremental
information, given the interim results, parameter value,
data-dependent changes in the error spending function, and
the number and spacing of interim looks. Conversely,
calculates the incremental information required to attain
a specified conditional power, given the interim results,
parameter value, data-dependent changes in the error
spending function, and the number and spacing of interim looks.
}
\examples{

# two-arm randomized clinical trial with a normally distributed endpoint
# 90\% power to detect mean difference of 15 with a standard deviation of 50
# Design the Stage I Trial with 3 looks and Lan-DeMets O'Brien-Fleming type
# spending function
delta <- 15
sigma <- 50

(des1 <- getDesignMeanDiff(
  beta = 0.1, meanDiff = delta, stDev = sigma,
  kMax = 3, alpha = 0.025, typeAlphaSpending = "sfOF"
))

s1 <- des1$byStageResults$informationRates
b1 <- des1$byStageResults$efficacyBounds
n <- des1$overallResults$numberOfSubjects

# Monitoring the Stage I Trial
L <- 1
nL <- des1$byStageResults$numberOfSubjects[L]
deltahat <- 8
sigmahat <- 55
sedeltahat <- sigmahat * sqrt( 4 / nL)
zL <- deltahat / sedeltahat

# Making an Adaptive Change: Stage I to Stage II
# revised clinically meaningful difference downward to 10 power the study
# retain the standard deviation at the design stage
# Muller & Schafer (2001) method to design the secondary trial
# with 2 looks and Lan-DeMets Pocock type spending function
# re-estimate sample size to reach 90\% conditional power
deltaNew <- 10

(des2 <- adaptDesign(
  betaNew = 0.1, L = L, zL = zL, theta = deltaNew,
  IMax = n / (4 * sigma^2), kMax = 3, informationRates = s1,
  alpha = 0.025, typeAlphaSpending = "sfOF",
  MullerSchafer = TRUE, kNew = 2, typeAlphaSpendingNew = "sfP"
))

INew <- des2$maxInformation
(nNew <- ceiling(INew * 4 * sigma^2))
(nTotal <- nL + nNew)

}
\references{
Lu Chi, H. M. James Hung, and Sue-Jane Wang.
Modification of sample size in group sequential clinical trials.
Biometrics 1999;55:853-857.

Hans-Helge Muller and Helmut Schafer.
Adaptive group sequential designs for clinical trials:
Combining the advantages of adaptive and of
classical group sequential approaches.
Biometrics 2001;57:886-891.
}
\seealso{
\code{\link{getDesign}}
}
\author{
Kaifeng Lu, \email{kaifenglu@gmail.com}
}
