fitted {JM}R Documentation

Fitted Values for Joint Models

Description

Calculates fitted values for joint models.

Usage

## S3 method for class 'jointModel':
fitted(object, process = c("Longitudinal", "Event"), 
type = c("Marginal", "Subject"), scale = c("survival", 
"cumulative-Hazard", "log-cumulative-Hazard"), M = 200, ...)

Arguments

object an object inheriting from class jointModel.
process for which model (i.e., linear mixed model or survival model) to calculate the fitted values.
type what type of fitted values to calculate for the survival outcome. See Details.
scale in which scale to calculate; relevant only when process = "Event".
M how many times to simulate random effects; see Details for more info.
... additional arguments; currently none is used.

Details

For process = "Longitudinal", let X denote the design matrix for the fixed effects β, and Z the design matrix for the random effects b. Then for type = "Marginal" the fitted values are X hat{β}, whereas for type = "Subject" they are X hat{β} + Z hat{b}.

For process = "Event" and type = "Subject" the linear predictor conditional on the random effects estimates is calculated for each sample unit. Depending on the value of the scale argument the fitted survival function, cumulative hazard function or log cumulative hazard function is returned. For type = "Marginal", random effects values for each sample unit are simulated M times from a normal distribution with zero mean and covariance matrix the estimated covariance matrix for the random effects. The marginal survival function for the ith sample unit is approximated by

S_i(t) = int S_i(t | b_i) p(b_i) db_i approx sum_{m = 1}^M S_i(t | b_{im}),

where p(b_i) denotes the normal probability density function, and b_{im} the mth simulated value for the random effect of the ith sample unit. The cumulative hazard and log cumulative hazard functions are calculated as H_i(t) = - log S_i(t) and log H_i(t) = log { - log S_i(t)}, respectively.

Value

a numeric vector of fitted values.

Author(s)

Dimitris Rizopoulos d.rizopoulos@erasmusmc.nl

See Also

residuals.jointModel

Examples

# linear mixed model fit
fitLME <- lme(log(serBilir) ~ drug * year, 
    random = ~ 1 | id, data = pbc2)
# survival regression fit
fitSURV <- survreg(Surv(years, status2) ~ drug, 
    data = pbc2.id, x = TRUE)
# joint model fit, under the (default) Weibull model
fitJOINT <- jointModel(fitLME, fitSURV, timeVar = "year")

# fitted for the longitudinal process
head(cbind(
    "Marg" = fitted(fitJOINT), 
    "Subj" = fitted(fitJOINT, type = "Subject")
))

# fitted for the event process - survival function
head(cbind(
    "Marg" = fitted(fitJOINT, process = "Ev"), 
    "Subj" = fitted(fitJOINT, process = "Ev", type = "Subject")
))

# fitted for the event process - cumulative hazard function
head(cbind(
    "Marg" = fitted(fitJOINT, process = "Ev", 
        scale = "cumulative-Hazard"), 
    "Subj" = fitted(fitJOINT, process = "Ev", type = "Subject", 
        scale = "cumulative-Hazard")
))

[Package JM version 0.2-2 Index]