Bootstrap confidence intervals for flexsurv output functions
Calculate a confidence interval for a model output by repeatedly replacing the parameters in a fitted model object with a draw from the multivariate normal distribution of the maximum likelihood estimates, then recalculating the output function.
bootci.fmsm( x, B, fn, cl = 0.95, attrs = NULL, cores = NULL, sample = FALSE, ... )
x |
Output from |
B |
Number of parameter draws to use |
fn |
Function to bootstrap the results of. It must have an argument named 'codex giving a fitted flexsurv model object. This may return a value with any format, e.g. list, matrix or vector, as long as it can be converted to a numeric vector with |
cl |
Width of symmetric confidence interval, by default 0.95 |
attrs |
Any attributes of the value returned from |
cores |
Number of cores to use for parallel processing. |
sample |
If |
... |
Additional arguments to pass to |
A matrix with two rows, giving the upper and lower confidence limits respectively. Each row is a vector of the same length as the unlisted result of the function corresponding to fncall.
## How to use bootci.msm
## Write a function with one argument called x giving a fitted model,
## and returning some results of the model. The results may be in any form.
tmat <- rbind(c(NA,1,2),c(NA,NA,3),c(NA,NA,NA))
bexp <- flexsurvreg(Surv(Tstart, Tstop, status) ~ trans, data=bosms3, dist="exp")
summfn <- function(x, t){
resp <- pmatrix.fs(x, trans=tmat, t=t)
rest <- totlos.fs(x, trans=tmat, t=t)
list(resp, rest)
}
## Use bootci.msm to obtain the confidence interval
## The matrix columns are in the order of the unlisted results of the original
## summfn. You will have to rearrange them into the format that you want.
## If summfn has any extra arguments, in this case \code{t}, make sure they are
## passed through via the ... argument to bootci.fmsm
bootci.fmsm(bexp, B=3, fn=summfn, t=10)
bootci.fmsm(bexp, B=3, fn=summfn, t=5)Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.