jointCox.reg {joint.Cox}R Documentation

Penalized Likelihood Estimation under the Joint Cox Models Between Tumour Progression and Death for Meta-Analysis

Description

Perform regression analyses under a copula-based joint Cox proportional hazards model between tumour progression and death for meta-analysis, which is proposed by Emura et al. (2017). The methodological details can be found in Emura et al. (2019). The method is applicable for meta-analysis combining several studies or for cluster survival data.

Usage

jointCox.reg(t.event, event, t.death, death, Z1, Z2, group, alpha = 1,
 kappa1 = c(seq(10, 1e+17, length = 30)),kappa2 = c(seq(10, 1e+17, length = 30)),
 LCV.plot = TRUE, Randomize_num = 10, u.min = 0.001, u.max = 10,
 Adj = 500,convergence.par=FALSE)

Arguments

t.event

a vector for time-to-tumour progression (TTP)

event

a vector for progression indicator (=1 if progression; =0 if not progression)

t.death

a vector for overall survival (OS), i.e., time-to-death

death

a vector for death indicator(=1 if death; =0 if not death)

Z1

a matrix for covariates associated with TTP; ncol(Z1)=the number of covariates

Z2

a matrix for covariates associated with OS; ncol(Z2)=the number of covariates

group

a vector for group identification numbers, like 1,2,3....

alpha

A value related to the frailty (e.g., alpha=0 or =1); alpha=1 is default

kappa1

a vector for candidate smoothing parameters

kappa2

a vector for candidate smoothing parameters

LCV.plot

Plot the LCV curves if "TRUE"

Randomize_num

The number of randomizations for the ititial p0

u.min

the lower bound of the numerical integration for the frailty term

u.max

the upper bound of the numerical integration for the frailty term

Adj

Numerical adjustment to prevent overflow; Adj=500 is recommended

convergence.par

If TRUE, the converged estimate, gradient, and Hessian matrix are given (log-transformed)

Details

We employ "nlm" routine to maximize the penalized likelihood function with the initial value described in Emura et al. (2017). If "nlm" does not converge, then we randomize the initial value by adding uniform random variables (Hu and Emura, 2015).

Value

count

Count for event occurences

beta1

Regression coefficient for Z1

beta2

Regression coefficient for Z2

eta

Frailty parameter (variance)

theta

Copula parameter under the Clayton copula

tau

Kendall's tau corresponding to the copula parameter

LCV1

Likelihood cross-validation for TTP

LCV2

Likelihood cross-validation for OS

g

M-spline coefficients for TTP

h

M-spline coefficients for OS

g_var

Variance of M-spline coefficients for TTP

h_var

Variance of M-spline coefficients for OS

convergence

convergence results for maximizing penalized likelihood

convergence.parameters

converged estimate, gradient, and Hessian matrix (log-transformed)

Error

"Error in integrate(func1, 0.001, 10, stop.on.error = FALSE):non-finite function value", an error occurring when the penalized likelihood is maximizad by "nlm". The error may frequently occur during the iterations for maximizing the penalized likelihood, but is not crucial (can simply be ignored).

Warning

"NA/Inf replaced by maximum positive value", an error occurring when the penalized likelihood is maximizad by "nlm". The error frequently occurs during the iterations for maximizing the penalized likelihood, but is not crucial (can simply be ignored).

Author(s)

Takeshi Emura

References

Emura T, Nakatochi M, Murotani K, Rondeau V (2017), A joint frailty-copula model between tumour progression and death for meta-analysis, Stat Methods Med Res 26(6): 2649-66

Emura T, Matsui S, Rondeau V (2019), Survival Analysis with Correlated Endpoints; Joint Frailty-Copula Models, JSS Research Series in Statistics, Springer

Hu YH, Emura T (2015), Maximum likelihood estimation for a special exponential family under random double-truncation, Computational Stat 30 (4): 1199-1229

Examples

############## Reproduce the results of Emura et al. (2017) #############
data(dataOvarian)
t.event=dataOvarian$t.event
event=dataOvarian$event
t.death=dataOvarian$t.death
death=dataOvarian$death
Z1=dataOvarian$CXCL12
group=dataOvarian$group
alpha_given=0
kappa_grid=seq(10,1e+17,length=30)
set.seed(1)
#jointCox.reg(t.event=t.event,event=event,t.death=t.death,death=death,
#                 Z1=Z1,Z2=Z1,group=group,alpha=alpha_given,
#                 kappa1=kappa_grid,kappa2=kappa_grid,LCV.plot=TRUE,Adj=500)


[Package joint.Cox version 3.16 Index]