DualEndpointDualEndpoint is the general class for the dual endpoint model.
DualEndpoint(mean, cov, ref_dose = 1, use_log_dose = FALSE, sigma2W, rho).DefaultDualEndpoint()
(numeric)
for the probit toxicity model, the prior mean vector.
(matrix)
for the probit toxicity model, the prior covariance
matrix. The precision matrix is internally calculated as an inverse of cov.
(number)
for the probit toxicity model, the reference
dose \(x*\) (strictly positive number).
(flag)
for the probit toxicity model, whether a log
transformation of the (standardized) dose should be used?
(numeric)
the biomarker variance. Either a fixed value or
Inverse-Gamma distribution parameters, i.e. vector with two elements named
a and b.
(numeric)
either a fixed value for the correlation
(between -1 and 1), or a named vector with two elements named a and b
for the Beta prior on the transformation kappa = (rho + 1) / 2, which is
in (0, 1). For example, a = 1, b = 1 leads to a uniform prior on rho.
betaZ_params(ModelParamsNormal)
for the probit toxicity model, it
contains the prior mean, covariance matrix and precision matrix which is
internally calculated as an inverse of the covariance matrix.
ref_dose(positive_number)
for the probit toxicity model, the
reference dose.
use_log_dose(flag)
for the probit toxicity model, whether a log
transformation of the (standardized) dose should be used?
sigma2W(numeric)
the biomarker variance. Either a fixed value or
Inverse-Gamma distribution parameters, i.e. vector with two elements named
a and b.
rho(numeric)
either a fixed value for the correlation
(between -1 and 1), or a named vector with two elements named a and b
for the Beta prior on the transformation kappa = (rho + 1) / 2, which is
in (0, 1). For example, a = 1, b = 1 leads to a uniform prior on rho.
use_fixed(logical)
indicates whether a fixed value for sigma2W
or rho (for each parameter separately) is used or not. This slot is
needed for internal purposes and must not be touched by the user.
The idea of the dual-endpoint models is to model not only the dose-toxicity relationship, but also to model, at the same time, the relationship of a PD biomarker with the dose. The sub-classes of this class define how the dose-biomarker relationship is parametrized. This class here shall contain all the common features to reduce duplicate code. (This class however, must not be virtual as we need to create objects of it during the construction of subclass objects.)
The dose-toxicity relationship is modeled with probit regression model
$$probit[p(x)] = betaZ1 + betaZ2 * x/x*,$$
or
$$probit[p(x)] = betaZ1 + betaZ2 * log(x/x*),$$
in case when the option use_log_dose is TRUE.
Here, \(p(x)\) is the probability of observing a DLT for a given
dose \(x\) and \(x*\) is the reference dose.
The prior $$(betaZ1, log(betaZ2)) ~ Normal(mean, cov).$$
For the biomarker response \(w\) at a dose \(x\), we assume
$$w(x) ~ Normal(f(x), sigma2W),$$
where \(f(x)\) is a function of the dose \(x\), which is further
specified in sub-classes. The biomarker variance \(sigma2W\) can be fixed
or assigned an Inverse-Gamma prior distribution; see the details below under
slot sigma2W.
Finally, the two endpoints \(y\) (the binary DLT variable) and \(w\)
(the biomarker) can be correlated, by assuming a correlation of level
\(rho\) between the underlying continuous latent toxicity variable \(z\)
and the biomarker \(w\). Again, this correlation can be fixed or assigned
a prior distribution from the scaled Beta family; see the details below
under slot rho.
Please see the example vignette by typing crmPackExample() for a full example.
DualEndpointRW, DualEndpointBeta, DualEndpointEmax.