
Default method for computing primary event censored quantiles
Source:R/pcens_quantile.R
pcens_quantile.default.Rd
This method inverts the primary event censored CDF using numerical
optimisation via optim. For each probability value, it searches for the
delay such that the CDF computed by pcens_cdf()
approximates the target
probability.
Usage
# Default S3 method
pcens_quantile(
object,
p,
pwindow,
D = Inf,
use_numeric = FALSE,
init = 5,
tol = 1e-08,
max_iter = 10000,
...
)
Arguments
- object
A
primarycensored
object as created bynew_pcens()
.- p
A vector of probabilities at which to compute the quantiles.
- pwindow
Primary event window
- D
Maximum delay (truncation point). If finite, the distribution is truncated at D. If set to Inf, no truncation is applied. Defaults to Inf.
- use_numeric
Logical; if TRUE forces the use of numeric inversion even if an analytical solution is available (not yet implemented).
- init
Initial guess for the delay. By default, 5.
- tol
Numeric tolerance for the convergence criterion in the optimisation routine.
- max_iter
Integer specifying the maximum number of iterations allowed during optimisation.
- ...
Additional arguments passed to underlying functions.
Details
The quantile is computed by minimising the squared difference between the computed CDF and the target probability.
See also
Low level primary event censored distribution objects and methods
new_pcens()
,
pcens_cdf()
,
pcens_cdf.default()
,
pcens_cdf.pcens_pgamma_dunif()
,
pcens_cdf.pcens_plnorm_dunif()
,
pcens_cdf.pcens_pweibull_dunif()
,
pcens_quantile()
Examples
# Create a primarycensored object with gamma delay and uniform primary
pcens_obj <- new_pcens(
pdist = pgamma,
dprimary = dunif,
dprimary_args = list(min = 0, max = 1),
shape = 3,
scale = 2
)
# Compute quantile for a single probability
pcens_quantile(pcens_obj, p = 0.8, pwindow = 1)
#> [1] 9.069147
# Compute quantiles for multiple probabilities
pcens_quantile(pcens_obj, p = c(0.25, 0.5, 0.75), pwindow = 1)
#> [1] 3.951257 5.853359 8.351001
# Compute quantiles for multiple probabilities with truncation
pcens_quantile(pcens_obj, p = c(0.25, 0.5, 0.75), pwindow = 1, D = 10)
#> [1] 3.666380 5.270768 7.092987