This class has special requirements for the model
and data
slots in comparison to the parent class Design
:
Arguments
- model
(
GeneralModel
)
see slot definition.- data
(
DataDA
)
see slot definition.- safetyWindow
(
SafetyWindow
)
see slot definition.- ...
Arguments passed on to
Design
stopping
(
Stopping
)
see slot definition.increments
(
Increments
)
see slot definition.pl_cohort_size
(
CohortSize
)
see slot definition.
Details
The safetyWindow
slot should be an instance of the SafetyWindow
class.
It can be customized to specify the duration of the safety window for your trial.
The safety window represents the time period required to observe toxicity data
from the ongoing cohort before opening the next cohort.
Note that even after opening the next cohort,
further toxicity data will be collected and analyzed to make dose escalation decisions.
To specify a constant safety window, use the SafetyWindowConst
constructor. For example:
mysafetywindow <- SafetyWindowConst(c(6, 2), 10, 20)
Slots
model
(
GeneralModel
)
the model to use, see in particularDALogisticLogNormal
andTITELogisticLogNormal
which make use of the time-to-DLT data.data
(
DataDA
)
what is the dose grid, any previous data, etc.safetyWindow
(
SafetyWindow
)
the safety window to apply between cohorts.
See also
SafetyWindowConst
for creating a constant safety window.
Examples
empty_data <- DataDA(doseGrid = c(
0.1, 0.5, 1, 1.5, 3, 6,
seq(from = 10, to = 80, by = 2)
), Tmax = 60)
npiece <- 10
t_max <- 60
lambda_prior <- function(k) {
npiece / (t_max * (npiece - k + 0.5))
}
model <- DALogisticLogNormal(
mean = c(-0.85, 1),
cov = matrix(c(1, -0.5, -0.5, 1), nrow = 2),
ref_dose = 56,
npiece = npiece,
l = as.numeric(t(apply(as.matrix(c(1:npiece), 1, npiece), 2, lambda_prior))),
c_par = 2
)
my_increments <- IncrementsRelative(
intervals = c(0, 20),
increments = c(1, 0.33)
)
my_next_best <- NextBestNCRM(
target = c(0.2, 0.35),
overdose = c(0.35, 1),
max_overdose_prob = 0.25
)
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)
my_stopping1 <- StoppingTargetProb(
target = c(0.2, 0.35),
prob = 0.5
)
my_stopping2 <- StoppingMinPatients(nPatients = 50)
my_stopping <- (my_stopping1 | my_stopping2)
my_safety_window <- SafetyWindowConst(c(6, 2), 7, 7)
design <- DADesign(
model = model,
increments = my_increments,
nextBest = my_next_best,
stopping = my_stopping,
cohort_size = my_size,
data = empty_data,
safetyWindow = my_safety_window,
startingDose = 3
)