If ff = "logit2"
(i.e. a two-parameter logistic model is used), a matrix of dimensions
production.itr
-by-2 is returned (the first and second columns containing the posterior samples for the
intercept and slope parameters respectively). Otherwise, a vector of length production.itr
is returned.
Posterior.rjags(tox, notox, sdose, ff, prior.alpha, burnin.itr,
production.itr)
A vector of length k
showing the number of patient who had toxicities at each dose level
A vector of length k
showing the number of patients who did not have toxicities at each dose level
A vector of length k
listing the standardised doses to
be used in the CRM model.
A string indicating the functional form of the dose-response curve. Options are
1-parameter hyperbolic tangent
1-parameter logistic
1-parameter power
2-parameter logistic
A list of length 3 containing the distributional information for the prior. The first element is a number from 1-4 specifying the type of distribution. Options are
Gamma(a, b), where a=shape, b=scale: mean=a*b, variance=a*b*b
Uniform(a, b), where a=min, b=max
Lognormal(a, b), where a=mean on the log scale, b=variance on the log scale
Bivariate Lognormal(a, b), where a=mean vector on the log scale, b=Variance-covariance matrix on the log scale. This prior should be used only in conjunction with a two-parameter logistic model.
The second and third elements of the list are the parameters a and b, respectively.
Number of burn-in iterations (default 2000).
Number of production iterations (default 2000).
Sweeting M., Mander A., Sabin T. bcrm: Bayesian Continual Reassessment Method Designs for Phase I Dose-Finding Trials. Journal of Statistical Software (2013) 54: 1--26. http://www.jstatsoft.org/article/view/v054i13
# NOT RUN {
## Dose-escalation cancer trial example as described in Neuenschwander et al 2008.
## Pre-defined doses
dose <- c(1, 2.5, 5, 10, 15, 20, 25, 30, 40, 50, 75, 100, 150, 200, 250)
## Pre-specified probabilities of toxicity
## [dose levels 11-15 not specified in the paper, and are for illustration only]
p.tox0 <- c(0.010, 0.015, 0.020, 0.025, 0.030, 0.040, 0.050,
0.100, 0.170, 0.300, 0.400, 0.500, 0.650, 0.800, 0.900)
## Data from the first 5 cohorts of 18 patients
tox <- c(0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0)
notox <- c(3, 4, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
## Target toxicity level
target.tox <- 0.30
## Prior distribution for the MTD given a lognormal(0, 1.34^2) distribution for alpha
## and a power model functional form
prior.alpha <- list(3, 0, 1.34^2)
ff <- "power"
samples.alpha <- getprior(prior.alpha, 2000)
mtd <- find.x(ff, target.tox, alpha=samples.alpha)
hist(mtd)
## Standardised doses
sdose <- find.x(ff, p.tox0, alpha=1)
## Posterior distribution of the MTD (on standardised dose scale) using data
## from the cancer trial described in Neuenschwander et al 2008.
## Using rjags
# }
# NOT RUN {
posterior.samples <- Posterior.rjags(tox, notox, sdose, ff, prior.alpha
, burnin.itr=2000, production.itr=2000)
# }
# NOT RUN {
# }
Run the code above in your browser using DataLab