frailty {survival}R Documentation

(Approximate) Frailty models

Description

When included in a coxph or survreg, fits by penalised likelihood a random effects (frailty) model. frailty is generic, with methods for t, Gaussian and Gamma distributions.

Usage

frailty(x, distribution="gamma", ...)
frailty.gamma(x, sparse = (nclass > 5), theta, df, eps = 1e-05, method = c("em","aic", "df", "fixed"), ...) 
frailty.gaussian(x, sparse = (nclass > 5), theta, df, method = c("reml","aic", "df", "fixed"), ...)
frailty.t(x, sparse = (nclass > 5), theta, df, eps = 1e-05, tdf = 5,method = c("aic", "df", "fixed"), ...)

Arguments

x group indicator
distribution frailty distribution
... Arguments for specific distribution, including (but not limited to)
sparse Use sparse Newton-Raphson algorithm
df Approximate degrees of freedom
theta Penalty
eps Accuracy of df
method maximisation algorithm
tdf df of t-distribution

Details

The penalised likelihood method is equivalent to maximum (partial) likelihood for the gamma frailty but not for the others.

The sparse algorithm uses the diagonal of the information matrix for the random effects, which saves a lot of space.

The frailty distributions are really the log-t and lognormal: t and Gaussian are random effects on the scale of the linear predictor.

Value

An object of class coxph.penalty containing a factor with attributes specifying the control functions.

References

Therneau TM, Grambsch PM, Pankratz VS (2003) "Penalized survival models and frailty" Journal of Computational and Graphical Statistics 12, 1: 156-175

See Also

coxph,survreg,ridge,pspline

Examples

data(kidney)
kfit <- coxph(Surv(time, status)~ age + sex + disease + frailty(id), kidney)
kfit0 <- coxph(Surv(time, status)~ age + sex + disease, kidney)
kfitm1 <- coxph(Surv(time,status) ~ age + sex + disease + 
                frailty(id, dist='gauss'), kidney)
coxph(Surv(time, status) ~ age + sex + frailty(id, dist='gauss', method='aic',caic=TRUE), kidney)
# uncorrected aic
coxph(Surv(time, status) ~ age + sex + frailty(id, method='aic', caic=FALSE), kidney)

data(rats)
rfit2a <- survreg(Surv(time, status) ~ rx +
                  frailty.gaussian(litter, df=13, sparse=FALSE), rats )
rfit2b <- survreg(Surv(time, status) ~ rx +
                  frailty.gaussian(litter, df=13, sparse=TRUE), rats )
rfit2a
rfit2b

[Package Contents]