CFOeff.oc | R Documentation |
Based on the toxicity outcomes and efficacy outcomes, this function is used to perform multiple simulations for phase I/II single-drug trials and obtain relevant operating characteristics.
CFOeff.oc(target, p.true=p.true, pE.true=pE.true, prior.para =
list(alp.prior = target, bet.prior = 1 - target,
alp.prior.eff = 0.5, bet.prior.eff = 0.5),
init.level = 1, cohortsize=cohortsize, ncohort=ncohort,
nsimu, cutoff.eli=0.95,
early.stop=0.95, effearly.stop = 0.9, mineff,
seeds = NULL)
target |
the target DLT rate. |
p.true |
the true DLT rates under the different dose levels. |
pE.true |
the true efficacy rates under the different dose levels. |
prior.para |
the prior parameters for two beta distributions, where set as |
init.level |
the dose level assigned to the first cohort. The default value |
cohortsize |
the number of patients in each cohort. |
ncohort |
the total number of cohorts. |
nsimu |
the total number of trials to be simulated. |
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 due to overly toxic. The default value |
effearly.stop |
the threshold value for early stopping due to low efficacy. The trial would be terminated
early if |
mineff |
the lowest acceptable efficacy rate. |
seeds |
a vector of random seeds for each simulation, for example, |
The CFOeff.oc()
function returns a list object, which includes the basic setup (simu.setup
), comprising the following components:
p.true: the true DLT rates under the different dose levels.
pE.true: the true efficacy rates under the different dose levels.
selpercent: the selection percentage at each dose level.
npatients: the averaged number of patients treated at each dose level in one simulation.
ntox: the averaged number of toxicity observed at each dose level in one simulation.
neff: the averaged number of efficacy outcome at each dose level in one simulation.
OBDsel: the percentage of correct selection of the OBD.
OBDallo: the percentage of patients allocated to the OBD.
averDLT: the percentage of the patients suffering DLT.
avereff: the percentage of the patients with efficacy outcomes.
percentstop: the percentage of early stopping without selecting the OBD.
simu.setup: the parameters for the simulation set-up.
class: the phase of the trial.
In the example, we set nsimu = 3
for testing time considerations.
In reality, nsimu
is typically set as 5000 to ensure the accuracy of the results.
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.
target <- 0.30; mineff <- 0.30; cohortsize = 3; ncohort = 12; nsimu = 3; init.level = 1
prior.para = list(alp.prior = target, bet.prior = 1 - target,
alp.prior.eff = 0.5, bet.prior.eff = 0.5)
p.true=c(0.05, 0.07, 0.1, 0.12, 0.16)
pE.true=c(0.35, 0.45, 0.5, 0.55, 0.75)
result <- CFOeff.oc (target, p.true, pE.true, prior.para,
init.level,cohortsize, ncohort, nsimu, mineff = mineff, seeds = 1:nsimu)
summary(result)
plot(result)
#earlystop for overly tox
target <- 0.30; mineff <- 0.30; cohortsize = 3; ncohort = 12; nsimu = 3; init.level = 1
prior.para = list(alp.prior = target, bet.prior = 1 - target,
alp.prior.eff = 0.5, bet.prior.eff = 0.5)
p.true=c(0.75, 0.77, 0.81, 0.82, 0.86)
pE.true=c(0.35, 0.45, 0.5, 0.55, 0.75)
result <- CFOeff.oc (target, p.true, pE.true, prior.para,
init.level,cohortsize, ncohort, nsimu, mineff = mineff, seeds = 1:nsimu)
summary(result)
plot(result)
#earlystop for lower efficacy
target <- 0.30; mineff <- 0.30; cohortsize = 3; ncohort = 20; nsimu = 3; init.level = 1
prior.para = list(alp.prior = target, bet.prior = 1 - target,
alp.prior.eff = 0.5, bet.prior.eff = 0.5)
p.true=c(0.05, 0.07, 0.1, 0.12, 0.16)
pE.true=c(0.001, 0.001, 0.001, 0.002, 0.003)
result <- CFOeff.oc (target, p.true, pE.true, prior.para,
init.level,cohortsize, ncohort, nsimu, mineff = mineff, seeds = 1:nsimu)
summary(result)
plot(result)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.