getDesignGroupSequential()
getDesignInverseNormal()
getDesignFisher()
getDesignConditionalDunnett()
PharmaSUG SDE, Tokyo
RCONIS
April 7, 2025
S+SeqTrial
rpact
and crmPack
pwr
, DoseFinding
, gsDesign
, bcrm
, Mediana
rpact
for confirmatory clinical trial designs
crmPack
for dose escalation trial designs
rpact
packageBut now back to rpact
!
Sample size and power can be calulcated for testing:
library(rpact)
# Define the design.
getDesignGroupSequential(
typeOfDesign = "asOF",
futilityBounds = c(0, 0)
) |>
# Perform sample size calculation.
getSampleSizeMeans(
alternative = 2,
stDev = 5
) |>
# Obtain summary.
summary()
Sample size calculation for a continuous endpoint
Sequential analysis with a maximum of 3 looks (group sequential design), one-sided overall significance level 2.5%, power 80%. The results were calculated for a two-sample t-test, H0: mu(1) - mu(2) = 0, H1: effect = 2, standard deviation = 5.
Stage | 1 | 2 | 3 |
---|---|---|---|
Planned information rate | 33.3% | 66.7% | 100% |
Cumulative alpha spent | 0.0001 | 0.0060 | 0.0250 |
Stage levels (one-sided) | 0.0001 | 0.0060 | 0.0231 |
Efficacy boundary (z-value scale) | 3.710 | 2.511 | 1.993 |
Futility boundary (z-value scale) | 0 | 0 | |
Efficacy boundary (t) | 4.690 | 2.152 | 1.384 |
Futility boundary (t) | 0 | 0 | |
Cumulative power | 0.0204 | 0.4371 | 0.8000 |
Number of subjects | 69.9 | 139.9 | 209.8 |
Expected number of subjects under H1 | 170.9 | ||
Overall exit probability (under H0) | 0.5001 | 0.1309 | |
Overall exit probability (under H1) | 0.0684 | 0.4202 | |
Exit probability for efficacy (under H0) | 0.0001 | 0.0059 | |
Exit probability for efficacy (under H1) | 0.0204 | 0.4167 | |
Exit probability for futility (under H0) | 0.5000 | 0.1250 | |
Exit probability for futility (under H1) | 0.0480 | 0.0035 |
Legend:
Obtain operating characteristics of different designs:
Why is rpact a reliable R package?
testPackage()
: installation qualification on a client computer or company server (with professional support, more later)rpact
rpact
in a user friendly and intuitive wayrpact
release on CRANrpact
installation qualification on each company computer with your personal testPackage()
token and secretrpact
future development activitiescrmPack
provides a highly flexible framework for the design and analysis of dose escalation trials. This schematic illustrates the framework’s key components and their interactions:
crmPack Framework
# remotes::install_github("openpharma/crmPack")
library(crmPack)
empty_data <- Data(doseGrid = c(1, 3, 5, 10, 15, 20, 25, 40, 50, 80, 100))
# Initialize the CRM model.
my_model <- LogisticLogNormal(
mean = c(-0.85, 1),
cov = matrix(c(1, -0.5, -0.5, 1), nrow = 2),
ref_dose = 56
)
# Choose the rule for selecting the next dose.
my_next_best <- NextBestNCRM(
target = c(0.2, 0.35),
overdose = c(0.35, 1),
max_overdose_prob = 0.25
)
# Choose the rule for the cohort-size.
my_size1 <- CohortSizeRange(
intervals = c(0, 30),
cohort_size = c(1, 3)
)
my_size2 <- CohortSizeDLT(
intervals = c(0, 1),
cohort_size = c(1, 3)
)
my_size <- maxSize(my_size1, my_size2)
# Choose the rule for stopping.
my_stopping1 <- StoppingMinCohorts(nCohorts = 3)
my_stopping2 <- StoppingTargetProb(
target = c(0.2, 0.35),
prob = 0.5
)
my_stopping3 <- StoppingMinPatients(nPatients = 20)
my_stopping <- (my_stopping1 & my_stopping2) | my_stopping3
# Choose the rule for dose increments.
my_increments <- IncrementsRelative(
intervals = c(0, 20),
increments = c(1, 0.33)
)
# Initialize the design.
design <- Design(
model = my_model,
nextBest = my_next_best,
stopping = my_stopping,
increments = my_increments,
cohort_size = my_size,
data = empty_data,
startingDose = 3
)
The current development version of crmPack
(Sabanés Bové et al. 2024) has the following features:
knitr
)crmPack
release on CRANcrmPack
installation qualification on each company computercrmPack
future development activitiesThese slides are at
rpact-com.github.io/slides-shanghai-2025
Contact us: