Learn R Programming

gmvjoint (version 0.4.0)

vcov.joint: Extract the variance-covariance matrix from a joint fit.

Description

Extract the variance-covariance matrix from a joint fit.

Usage

# S3 method for joint
vcov(object, corr = FALSE, ...)

Value

A variance-covariance matrix for the joint model object.

Arguments

object

a joint model fit by the joint function.

corr

should the correlation matrix be returned instead of the variance-covariance?

...

extra arguments (none used).

Methodology

Many competing ways exist for obtaining the observed information matrix in an EM algorithm. In the context of joint modelling, the observed empirical approximation of the information matrix has been used previously (joineRML, Hickey et al. 2018). Elsewhere, estimation of the observed information in a semi-parametric setting is outlined neatly in Xu et al. (2014). Here, they advocate for approximation of this information matrix by numerical differentiation of the profile Fisher Score vector. We do not consider this methodology owing to its computational expense. That is, for each element of \(\Omega\) which is perturbed by some small amount \(\tilde{\Omega}^{p}\), we must re-calculate \(\hat{b}_i\) and \(\hat{\Sigma}_i\).

Author

James Murray j.murray7@ncl.ac.uk

Details

Uses the observed-empirical approximation of information matrix (Mclachlan & Krishnan, 2008). The standard errors for the baseline hazard are not estimated.

References

Hickey GL, Philipson P, Jorgensen A, Kolamunnage-Dona R. joineRML: a joint model and software package for time-to-event and multivariate longitudinal outcomes. BMC Med. Res. Methodol. 2018; 50

McLachlan GJ, Krishnan T. The EM Algorithm and Extensions. Second Edition. Wiley-Interscience; 2008.

Xu C, Baines PD, Wang J. Standard error estimation using the EM algorithm for the joint modeling of survival and longitudinal data. Biostatistics 2014; 15(4).

Examples

Run this code
# Univariate fit on PBC data -------------------------------------------
data(PBC)

# Subset data and remove NAs
PBC <- subset(PBC, select = c('id', 'survtime', 'status', 'drug', 'time',
                              'albumin'))
PBC <- na.omit(PBC) 

# Specify univariate fit
long.formulas <- list(
  albumin ~ time + (1 + time|id)
)
surv.formula <- Surv(survtime, status) ~ drug

fit <- joint(long.formulas, surv.formula, PBC, family = list('gaussian'))

vcov(fit)

Run the code above in your browser using DataLab