Learn R Programming

dfpk (version 3.5.1)

pkcrm: Dose finding method PKCRM.

Description

The PKCRM model is a combination of PKLIM as given below: $$z_{i} \vert \boldsymbol{\beta}, \nu \sim N \left( \beta_0 + \beta_1 \log d_{i}, \nu^{2} \right)$$ where \(\boldsymbol{\beta} = (\beta_0, \beta_1)\) are the regression parameters and \(\nu\) is the standard deviation, and the Continual Reassessment Method's (CRM) model: $$p_T(d_k, \beta) = d^\beta_k(CRM)$$

The default choices of the priors are: $$\boldsymbol{\beta} \vert \nu \sim N(m, \nu*beta0),$$ $$\nu \sim Beta(1,1),$$ $$m = (-log(CL_{pop}), 1)$$ where \(Cl_{pop}\) is the population clearance. where default choices are \(Cl_{pop} = 10\) and beta0 = 10000. Therefore, the default choices for model's priors are given by $$betapriors = c(Cl_{pop} = 10, beta0 = 10000)$$

For the CRM model:

Skeleton CRM = (0.01, 0.05, 0.1, 0.2, 0.35, 0.45) and $$\beta \sim N(0, 1.34)$$

Finally, the PKCRM model has the following stopping rule in toxicity: if $$P(p_T(dose) > theta) > prob$$ then, no dose is suggested and the trial is stopped.

Usage

pkcrm(y, auc, doses, x, theta, p0, L, prob = 0.9, options = list(nchains = 4, 
      niter = 4000, nadapt = 0.8), betapriors = c(10, 10000), thetaL=NULL, 
      deltaAUC = NULL, CI = TRUE)

Arguments

y

A binary vector of patient's toxicity outcomes; TRUE indicates a toxicity, FALSE otherwise.

doses

A vector with the doses panel.

x

A vector with the dose level assigned to the patients.

theta

The toxicity target.

prob

The threshold of the posterior probability of toxicity for the stopping rule; defaults to 0.9.

betapriors

A vector with the value for the prior distribution of the regression parameters in the model; defaults to betapriors = c(\(Cl_{pop}\), beta0), where \(Cl_{pop}\) = 10 and beta0 = 10000.

options

A list with the Stan model's options; the number of chains, how many iterations for each chain and the number of warmup iterations; defaults to options = list(nchains = 4, niter = 4000, nadapt = 0.8).

auc

A vector with the computed AUC values of each patient for pktox, pkcrm, pklogit and pkpop; defaults to NULL.

deltaAUC

The difference between computed individual AUC and the AUC of the population at the same dose level (defined as an average); argument for pkcov; defaults to NULL.

p0

The skeleton of CRM for pkcrm; defaults to NULL (must be defined only in the PKCRM model).

L

The AUC threshold to be set before starting the trial for pklogit, pkcrm and pktox; defaults to NULL (must be defined only in the PKCRM model).

thetaL

A second threshold of AUC; must be defined only in the PKCRM model.

CI

A logical constant indicating the estimated 95% credible interval; defaults to TRUE.

Value

A list is returned, consisting of determination of the next recommended dose and estimations of the model. Objects generated by pkcrm contain at least the following components:

newDose

The next maximum tolerated dose (MTD); equals to "NA" if the trial has stopped before the end, according to the stopping rules.

pstim

The mean values of estimated probabilities of toxicity.

p_sum

The summary of the estimated probabilities of toxicity if CI = TRUE, otherwise is NULL.

parameters

The estimated model's parameters.

References

Ursino, M., et al, (2017) Dose-finding methods for Phase I clinical trials using pharmacokinetics in small populations, Biometrical Journal, <doi:10.1002/bimj.201600084>.

Toumazi, A., et al, (2018) dfpk: An R-package for Bayesian dose-finding designs using pharmacokinetics (PK) for phase I clinical trials, Computer Methods and Programs in Biomedicine, <doi:10.1016/j.cmpb.2018.01.023>.

Patterson, S., Francis, S., Ireson, M., Webber, D., and Whitehead, J. (1999) A novel bayesian decision procesure for early-phase dose-finding studies. Journal of Biopharmaceutical Statistics, 9 (4), 583-597.

Whitehead, J., Patterson, S., Webber, D., Francis, S., and Zhou, Y. (2001) Easy-to-implement bayesian methods for dose-escalation studies in healthy volunteers. Biostatistics, 2 (1), 47-61.

See Also

sim.data, nsim, nextDose

Examples

Run this code
# NOT RUN {
    
# }
# NOT RUN {
        p0 <- c(.01,.05,.1,.2,.35,0.45)         # Skeleton of CRM
        L <- log(15.09)                         # Threshold set
        doses <- c(12.59972,34.65492,44.69007,60.80685,83.68946,100.37111)
        theta <- 0.2
        options <- list(nchains = 2, niter = 4000, nadapt = 0.8)
        AUCs <-  c(0.43, 1.4, 5.98, 7.98, 11.90, 3.45)
        x <- c(1,2,3,4,5,6)
        y <- c(FALSE,FALSE,FALSE,FALSE,TRUE,FALSE)

        res <- pkcrm(y, AUCs, doses, x, theta, p0, L, options = options)
    
# }

Run the code above in your browser using DataLab