In the CFO design for phase I/II trials, the function is used to determine the dose movement based on the toxicity outcomes and efficacy outcomes of the enrolled cohorts.
CFOeff.next(target, axs, ays, ans, currdose,
prior.para=list(alp.prior = target, bet.prior = 1 - target,
alp.prior.eff = 0.5, bet.prior.eff = 0.5),
cutoff.eli=0.95, early.stop=0.95, effearly.stop = 0.9, mineff)The CFOeff.next() function returns a list object comprising the following elements:
target: the target DLT rate.
axs: the cumulative counts of efficacy outcomes at all dose levels.
ays: the cumulative counts of DLTs observed at all dose levels.
ans: the cumulative counts of patients treated at all dose levels.
decision: the decision in the CFO design, where de-escalation, stay, and escalation represent the
movement directions of the dose level, stop_for_tox indicates stopping the experiment because the lowest dose level
is overly toxic and stop_for_low_eff indicates that all dose level in the admissible set shows low efficacy.
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)\), for doses in admissible set, where \(p_k\), \(x_k\), and \(m_k\) are the dose-limiting toxicity (DLT) rate, the numbers of observed DLTs, and the numbers of patients at dose level \(k\).
effprob: the empirical probability of \(Pr(q_k=max_{j\in A_n}\{q_j\}|D_n)\) for doses in admissible set, where \(q_k\) is efficacy probability at dose level \(k\). \(A_n\) is the admissible set determined through the dose escalation rules for the MTD and \(D_n\) is the current cumulative dataset.
admset: the admissible set \(A_n\). The dose level for the next cohort will be selected from \(A_n\).
class: the phase of the trial.
the target DLT rate.
the cumulative counts of efficacy outcomes at all dose levels.
the cumulative counts of DLTs observed at all dose levels.
the cumulative counts of patients treated at all dose levels.
the current dose level.
the prior parameters for two beta distributions, where set as list(alp.prior = target,
bet.prior = 1 - target, alp.prior.eff = 0.5, bet.prior.eff = 0.5) by default. alp.prior and bet.prior
represent the parameters of the prior distribution for the true DLT rate at any dose level. This prior distribution
is specified as Beta(alpha.prior, beta.prior). alp.eff.prior and bet.eff.prior
represent the parameters of the Jeffreys' prior distribution for the efficacy probability at any dose level.
This prior distribution is specified as Beta(alpha.eff.prior, beta.eff.prior).
the cutoff to eliminate overly toxic doses for safety. We recommend
the default value of cutoff.eli = 0.95 for general use.
the threshold value for early stopping due to overly toxic. The default value early.stop = 0.95
generally works well.
the threshold value for early stopping due to low efficacy. The trial would be terminated
early if \(Pr(q_k<\psi |y_k,m_k \ge 3)\) is smaller than the value of effearly.stop where \(q_k, y_k\) and \(m_k\)
are the efficacy probability, the number of efficacy outcomes and the number of patients at dose level \(k\).
\(\psi\) is the the lowest acceptable efficacy rate which is set by mineff here.
By default, effearly.stop is set as 0.9.
the lowest acceptable efficacy rate.
Jialu Fang, Ninghao Zhang, Wenliang Wang, and Guosheng Yin
The CFO design for phase I/II trials will determine admissible set \(A_n\) through the dose escalation rules for the MTD. The current dose is set as \(d_n\). If the decision is to de-escalate the dose, the set \(A_n\) will be \(\{1,\dots,d_n-1\}\). If the decision is to stay at the current dose, then the admissible set \(A_n\) will be \(\{1,\dots,d_n\}\). If the decision is to escalate the dose, then \(A_n\) will be \(\{1,\dots,d_n+1\}\). The dose level \(d_{n+1}\) for the next cohort will be selected from \(A_n\) by using the rule: \(d_{n+1} = argmax_{k\in A_n}Pr(q_k = max_{j\in A_n}\{q_j\}| D_n)\) where \(D_n\) and \(q_k\) are the current data and the efficacy probability for dose level \(k\).
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.
axs = c(3, 1, 7, 11, 26); ays = c(0, 0, 0, 0, 6); ans = c(6, 3, 12, 17, 36)
target <- 0.4
decision <- CFOeff.next(target,axs,ays,ans,currdose = 3, mineff = 0.3)
summary(decision)
#early stop for overly toxic
axs = c(13, 11, 7, 11, 26); ays = c(25, 18, 12, 17, 26); ans = c(36, 23, 22, 27, 36)
target <- 0.4
decision <- CFOeff.next(target,axs,ays,ans,currdose = 1, mineff = 0.3)
summary(decision)
#early stop for low efficacy
axs = c(0, 0, 0, 0, 0); ays = c(2, 1, 1, 1, 6); ans = c(36, 23, 22, 27, 36)
target <- 0.4
decision <- CFOeff.next(target,axs,ays,ans,currdose = 1, mineff = 0.3)
summary(decision)
Run the code above in your browser using DataLab