GaFrailtyMM {MMAD}R Documentation

MM algorithm based on AD technology for gamma frailty model

Description

Let Tij,CijT_{ij}, C_{ij} and Xij=(Xij1,,Xijq)TX_{ij} = (X_{ij1},\cdots, X_{ijq})^T denote the survival time, the censoring time and a vector of covariates, respectively. For the jj-th individual in the ii-th cluster, for j=1,,Mij=1, \cdots, M_i and i=1,,Bi=1, \cdots, B. And assume the censoring time CijC_{ij} is independent of the survival time TijT_{ij} given XijX_{ij}, and Iij=I(TijCij)I_{ij} = I(T_{ij} \leqslant C_{ij}) is the censoring indicator. Conditional on a cluster-specific frailty ωi\omega_i, then the frailty model postulates that the instantaneous hazard rate function of TijT_{ij} is

λ(tXij,ωi)=λ0(t)exp(XijTβ)ωi\lambda(t|X_{ij} , \omega_i )=\lambda_{0}(t) \exp(X_{ij}^{T} \beta) \omega_i

where λ0(t)\lambda_{0}(t) is a baseline hazard rate and β\beta is a vector of regression parameters. We assume that the frailty ω\omega has a gamma distribution with mean 1, variance θ\theta and density

g(ω)=ω11θexp(ωθ)Γ(1θ)θ1θ g(\omega) = \frac{\omega^{\frac{1}{1-\theta}} \exp(-\frac{\omega}{\theta})}{\Gamma( \frac{1}{\theta}) \theta^{\frac{1}{\theta}}}

and we denote Λ\Lambda as the accumulative hazard rate. The GaFrailtyMM function is used to calculate the gamma frailty model.

Usage

GaFrailtyMM(
  formula,
  data,
  beta = NULL,
  theta = NULL,
  lambda = NULL,
  Maxiter = 2000,
  convergence = 1e-06,
  ...
)

Arguments

formula

A formula object, which contains on the left hand side an object of the type Surv and on the right hand side a +cluster(id) statement. e.g. formula=Surv(time, status) ~ x + cluster(id)

data

A data.frame in which to interpret the variables named in the formula.

beta

A vector of unknown regression parameters, default is NULL. If is NULL, then make all beta=1 during calculation.

theta

The variance of frailty factors subject to gamma distribution, default is NULL. If is NULL, then let theta=1 during calculation.

lambda

Baseline hazard rate, default set to NULL. If is NULL, then let each lambda equals to 1/N during calculation, which N is the number of observed.

Maxiter

The maximum number of iterations is specified by default as 2000.

convergence

Specify the convergence criterion, the default is 1e-6.

...

Additional arguments

Details

The GaFrailtyMM function is used to calculate gamma frailty survival model using MM algorithms based on AD technology. EM algorithms relies on the fact that, after profiling out the nonparametric component Λ0\Lambda_0, the resulting function is concave. When it does not hold, using Newton method to maximize the resulting function is difficult especially when there exist a large number of covariates. MM algorithms that can avoid the concavity requirement and bypass Newton method and matrix inversion.

Value

An object of class GaFrailtyMM that contains the following fields: total amount of observations, the Time, the Λ\Lambda, the λ\lambda, total number of failure events, total number of iterations, convergence result, the log likelihood value, the θ\theta, the standard deviation of the estimated θ\theta, the likelihood-based 95% confidence interval for the θ\theta, β\beta, the standard deviation of the estimated β\beta, the likelihood-based 95% confidence interval for the β\beta, the variable name.

References

Huang X.F., Xu J.F. and Tian G.L.(2019). 'On profile MM algorithms for gamma frailty survival models.' Statistica Sinica 29(2), 895-916.

Examples

library(survival)
GaFrailtyMM(Surv(time, status) ~ age + sex + cluster(id), data=kidney)


[Package MMAD version 1.0.0 Index]