Type: | Package |
Title: | Hybrid Design for Phase I Dose-Finding Studies |
Version: | 1.0 |
Maintainer: | Heng Zhou <heng.zhou@merck.com> |
Description: | The Hybrid design is a combination of model-assisted design (e.g., the modified Toxicity Probability Interval design) with dose-toxicity model-based design for phase I dose-finding studies. The hybrid design controls the overdosing toxicity well and leads to a recommended dose closer to the true maximum tolerated dose (MTD) due to its ability to calibrate for an intermediate dose. More details can be found in Liao et al. 2022 <doi:10.1002/ijc.34203>. |
Imports: | testit, ResourceSelection |
Depends: | R (≥ 3.6) |
License: | GPL-3 |
Encoding: | UTF-8 |
RoxygenNote: | 7.1.2 |
NeedsCompilation: | no |
Packaged: | 2022-12-14 19:42:26 UTC; zhouheng |
Author: | Heng Zhou [aut, cre], Feng Zhou [aut], Jason Liao [aut] |
Repository: | CRAN |
Date/Publication: | 2022-12-15 09:10:02 UTC |
Generate modified mTPI Design Decision Boundary
Description
Generate dose escalation and deescalation boundaries of modified Toxicity Probability Interval (mTPI) design with overdose control.
Usage
get_boundary_mtpi(
target,
ncohort,
cohortsize,
eps1 = 0.05,
eps2 = 0.05,
a = 1,
b = 1,
cutoff.eli = 0.95,
tox.control = FALSE,
cut.tox = 0.8,
esc.control = FALSE,
cut.esc = 0.5
)
Arguments
target |
target toxicity rate |
ncohort |
the total number of cohorts |
cohortsize |
the cohort size |
eps1 |
modified Toxicity Probability Interval (mTPI) design parameter epsilon1. Default: 0.05 |
eps2 |
modified Toxicity Probability Interval (mTPI) design parameter epsilon2. Default: 0.05 |
a |
Beta prior shape parameter 1. Default: 1 |
b |
Beta prior shape parameter 2. Default: 1 |
cutoff.eli |
Posterior probability cutoff of eliminating dose due to unacceptable toxicity. Default: 0.95 |
tox.control |
indicator of whether to perform toxicity control. If |
cut.tox |
toxicity control cutoff. Default: 0.8 |
esc.control |
indicator of whether to perform escalation control. If |
cut.esc |
escalation control cutoff. Default: 0.5 |
Value
This function returns the table of escalation and deescalation boundaries.
Examples
get_boundary_mtpi(target=0.30, ncohort=10, cohortsize=3)
Generate operating characteristics for single-agent dose-finding studies using the Hybrid design
Description
Obtain the operating characteristics of the Hybrid design for single-agent dose-finding studies by simulation.
Usage
get_oc_hybrid(trueMTD, trueDLTvec, dose, target, ncohort, cohortsize,
eps1=0.05, eps2=0.05,a=1, b=1, cutoff.eli=0.95,
tox.control=TRUE, cut.tox=0.8, esc.control=FALSE, cut.esc=0.5,
ntrial, seednum=10000)
Arguments
trueMTD |
the dosage of true maximum tolerated dose (MTD) |
trueDLTvec |
a vector of true dose-limiting toxicity (DLT) rates at each dose level |
dose |
a vector containing the numerical dosage of each dose level |
target |
target toxicity rate |
ncohort |
the total number of cohorts |
cohortsize |
the cohort size |
eps1 |
mTPI design parameter epsilon1. Default: 0.05 |
eps2 |
mTPI design parameter epsilon2. Default: 0.05 |
a |
Beta prior shape parameter 1. Default: 1 |
b |
Beta prior shape parameter 2. Default: 1 |
cutoff.eli |
Posterior probability cutoff of eliminating dose due to unacceptable toxicity. Default: 0.95 |
tox.control |
indicator of whether to perform toxicity control. If |
cut.tox |
toxicity control cutoff. Default: 0.8 |
esc.control |
indicator of whether to perform escalation control. If |
cut.esc |
escalation control cutoff. Default: 0.5 |
ntrial |
the total number of trials to be simulated |
seednum |
the random seed for simulation |
Value
This function returns the operating characteristics of the Hybrid design as a list, including: (1) Percentage of correct selection of the true MTD in all simulated trials, (2) Percentage of selecting a dose above MTD in all simulated trials, (3) Percentage of selecting a dose below MTD in all simulated trials, (4) Average number of patients treated at MTD in all simulated trials.
Examples
get_oc_hybrid(trueMTD=12, trueDLTvec=c(0.15,0.20,0.25,0.30,0.35), dose=c(3, 6, 12, 18, 24),
target=0.25, ncohort=10, cohortsize=3, eps1=0.05, eps2=0.05, a=1, b=1,
cutoff.eli=0.95, tox.control=TRUE, cut.tox=0.8, esc.control=FALSE, cut.esc=0.5,
ntrial=100, seednum=10000)
Implement Hybrid design with real data
Description
Obtain decision for the next dose level to be tested given current trial data.
Usage
hybrid(dose, nDLT, npts, currdose, nextdose=0, target, ncohort, cohortsize,
eps1=0.05, eps2=0.05, a=1, b=1, cutoff.eli=0.95, tox.control=TRUE,
cut.tox=0.8, esc.control=FALSE, cut.esc=0.5, regrule)
Arguments
dose |
a vector containing the numerical dosage of each dose level |
nDLT |
a vector containing the number of patients who experienced dose-limiting toxicity at each dose level |
npts |
a vector containing the number of patients at each dose level |
currdose |
the dosage at the current dose level |
nextdose |
the dosage of next higher dose level; could be an intermediate dose |
target |
the target toxicity rate |
ncohort |
the total number of cohorts |
cohortsize |
the cohort size |
eps1 |
modified Toxicity Probability Interval (mTPI) design parameter epsilon1. Default: 0.05 |
eps2 |
modified Toxicity Probability Interval (mTPI) design parameter epsilon2. Default: 0.05 |
a |
Beta prior shape parameter 1. Default: 1 |
b |
Beta prior shape parameter 2. Default: 1 |
cutoff.eli |
Posterior probability cutoff of eliminating dose due to unacceptable toxicity. Default: 0.95 |
tox.control |
indicator of whether to perform toxicity control. If |
cut.tox |
toxicity control cutoff. Default: 0.8 |
esc.control |
indicator of whether to perform escalation control. If |
cut.esc |
escalation control cutoff. Default: 0.5 |
regrule |
indicator of whether to apply additional overdose control rule |
Value
This function returns the decision of implementing the Hybrid design with real trial data as a list, including: (1) dose transition boundaries of modified mTPI design, (2) decision table of modified mTPI design, (3) the decision given current data, (4) the summary table of tested dose levels
Examples
hybrid(dose=c(2,4,8,16,22,28,40), nDLT=c(0,0,0,0,1,0,2), npts=c(3,3,4,6,9,5,16), currdose=40,
nextdose=54, target=0.3, ncohort=10, cohortsize=3, eps1=0.05, eps2=0.05, a=1, b=1,
cutoff.eli=0.95, tox.control=TRUE, cut.tox=0.8, regrule=TRUE)
Select the maximum tolerated dose (MTD) for single-agent dose-finding studies
Description
Select the maximum tolerated dose (MTD) when the single-agent dose-finding study is completed
Usage
hybrid_MTD_selection(target, dose, npts, nDLT, elimdose)
Arguments
target |
the target toxicity rate |
dose |
a vector containing the numerical dosage of each dose level |
npts |
a vector containing the number of patients treated at each dose level |
nDLT |
a vector containing the number of patients who experienced dose-limiting toxicity at each dose level |
elimdose |
the dosage at the dose level which is excluded due to excessive toxicity |
Details
hybrid.MTD.selection()
selects the MTD based on isotonic estimates of toxicity
probabilities. The isotonic estimates are obtained by the pooled-adjacent-violators
algorithm (PAVA) (Barlow, 1972 <doi: 10.1080/01621459.1972.10481216>).
Value
The selected dosage as MTD
Note
The dose levels above elim
are all excluded for MTD selection.
Examples
hybrid_MTD_selection(target=0.3, dose=c(2,4,8,16,22,28,40), npts=c(2,4,8,16,22,28,40),
nDLT=c(0,0,0,0,1,0,2), elimdose=28)