CFO.next | R Documentation |
In the CFO design for phase I trials, the function is used to determine the dose movement based on the toxicity outcomes of the enrolled cohorts.
CFO.next(target, cys, cns, currdose,
prior.para = list(alp.prior = target, bet.prior = 1 - target),
cutoff.eli = 0.95, early.stop = 0.95)
target |
the target DLT rate. |
cys |
the cumulative numbers of DLTs observed at the left, current, and right dose levels. |
cns |
the cumulative numbers of patients treated at the left, current, and right dose levels. |
currdose |
the current dose level. |
prior.para |
the prior parameters for a beta distribution, where set as |
cutoff.eli |
the cutoff to eliminate overly toxic doses for safety. We recommend
the default value of |
early.stop |
the threshold value for early stopping. The default value |
The CFO design determines the dose level for the next cohort by assessing evidence from the current
dose level and its adjacent levels. This evaluation is based on odds ratios denoted as O_k
, where
k = L, C, R
represents left, current (central), and right dose levels. Additionally, we define \overline{O}_k = 1/O_k
.
The ratio O_C / \overline{O}_{L}
indicates the inclination for de-escalation, while \overline{O}_C / O_R
quantifies the tendency for escalation. Threshold values \gamma_L
and \gamma_R
are chosen to
minimize the probability of making incorrect decisions. The decision process is summarized in Table 1
of Jin and Yin (2022).
The early stopping and dose elimination rules are implemented to ensure patient safety. If the data suggest excessive
toxicity at the current dose level, we exclude that dose level and those higher levels. If the lowest dose level is overly toxic,
the trial will be terminated according to the early stopping rule.
The CFO.next()
function returns a list object comprising the following elements:
target: the target DLT rate.
cys: the cumulative counts of DLTs observed at the left, current, and right dose levels.
cns: the cumulative counts of patients treated at the left, current, and right dose levels.
decision: the decision in the CFO design, where left
, stay
, and right
represent the
movement directions, and stop
indicates stopping the experiment.
currdose: the current dose level.
nextdose: the recommended dose level for the next cohort. nextdose = 99
indicates that the trial is
terminated due to early stopping.
overtox: the situation regarding which positions experience over-toxicity. The dose level indicated
by overtox
and all the dose levels above experience over-toxicity. overtox = NA
signifies that
the occurrence of over-toxicity did not happen.
toxprob: the expected toxicity probability, Pr(p_k > \phi | x_k, m_k)
, at the left, current, and
right dose levels, where p_k
, x_k
, and m_k
is the dose-limiting toxicity (DLT) rate, the
numbers of observed DLTs, and the numbers of patients at dose level k
. NA
indicates that there
are no patients at the corresponding dose level.
When the current dose level is the lowest or highest (i.e., at the boundary), the parts in cys
and
cns
where there is no data are filled with NA
.
The dose level indicated by overtox
and all the dose levels above experience over-toxicity, and these dose levels will be eliminated.
Jialu Fang, Ninghao Zhang, Wenliang Wang, and Guosheng Yin
Jin H, Yin G (2022). CFO: Calibration-free odds design for phase I/II clinical trials. Statistical Methods in Medical Research, 31(6), 1051-1066.
## determine the dose level for the next cohort of new patients
cys <- c(0, 1, 0); cns <- c(3, 6, 0)
decision <- CFO.next(target=0.2, cys=cys, cns=cns, currdose=3)
summary(decision)
cys <- c(NA, 3, 0); cns <- c(NA, 3, 0)
decision <- CFO.next(target=0.2, cys=cys, cns=cns, currdose=1)
summary(decision)
cys <- c(0, 3, NA); cns <- c(3, 3, NA)
decision <- CFO.next(target=0.2, cys=cys, cns=cns, currdose=7)
summary(decision)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.