boot.pwexp.fit {PWEXP}R Documentation

Bootstrap a Piecewise Exponential Model

Description

Bootstrap a existing piecewise exponential model or build a piecewise exponential model with bootstrapping.

Usage

## Default S3 method:
boot.pwexp.fit(time, event, nsim=100, breakpoint=NULL, nbreak=0,
               exclude_int=NULL, min_pt_tail=5, max_set=1000, seed=1818,
               optimizer='mle', tol=1e-4, parallel=FALSE, mc.core=4, ...)
## S3 method for class 'pwexp.fit'
boot.pwexp.fit(time, nsim=100, max_set=1000, seed=1818,
               optimizer='mle', tol=1e-4, parallel=FALSE, mc.core=4, ...)

Arguments

time

observed time from randomization or a pwexp.fit object.

event

the status indicator. See pwexp.fit.

nsim

the number of repeated bootstraping.

breakpoint

pre-specified breakpoints. See pwexp.fit.

nbreak

total number of breakpoints. See pwexp.fit.

exclude_int

an interval that excludes any estimated breakpoints. See pwexp.fit.

min_pt_tail

the minimum number of events used for estimating the tail (the hazard rate of the last piece). See pwexp.fit.

max_set

maximum estimated combination of breakpoints. See pwexp.fit.

seed

a random seed.

optimizer

one of the optimizers: mle, ols, or hybrid. See pwexp.fit.

tol

the minimum allowed gap between two breakpoints. The gap is calculated as (max(time)-min(time))*tol. Keep it as default in most cases.

parallel

logical. If TRUE, use doSNOW package to run in parallel.

mc.core

number of processes allowed to be run in parallel.

...

internal function reserved.

Details

Use bootstrap to repeatdly call pwexp.fit to estimate the uncertainty of parameters.

Value

A data frame (res) containing these columns:

brk1, ..., brkx

estimated breakpoints. The attr(res,'brk') can extract the result of breakpoint from each bootstrap sample (res is the returned model from boot.pwexp.fit).

lam1, ..., lamx

estimated piecewise hazard rates. The attr(res,'lam') can extract the result of hazard rates from bootstrap sample (res is the returned model from boot.pwexp.fit).

likelihood

the log-likelihood of the model.

AIC

the Akaike information criterion of the model.

BIC

the Bayesian information criterion of the model.

Author(s)

Tianchen Xu zjph602xutianchen@gmail.com

See Also

pwexp.fit

Examples

event_dist <- function(n)rpwexp(n, rate = c(0.1, 0.01, 0.2), breakpoint =  c(5,14))
dat <- simdata(rand_rate = 20, drop_rate = 0.03,  total_sample = 1000,
               advanced_dist = list(event_dist=event_dist),
               add_column = c('censor_reason','event','followT','followT_abs'))

fit_res3 <- pwexp.fit(dat$followT, dat$event, nbreak = 2)
fit_res_boot <- boot.pwexp.fit(fit_res3, nsim = 10) # here nsim=10 is for demo purpose,
                                                    # pls increase it in practice
plot_survival(dat$followT, dat$event, xlim=c(0,40))
plot_survival(fit_res_boot, col='red', CI_par = list(col='red'))
brk_ci <- apply(attr(fit_res_boot, 'brk'), 2, function(x)quantile(x,c(0.025,0.975)))
abline(v=brk_ci, col='grey', lwd=2)

[Package PWEXP version 0.5.0 Index]