cindex.CV {compound.Cox} | R Documentation |
Cross-validated c-index for measuring the predictive accuracy of a prognostic index under a copula-based dependent censoring model.
Description
This function calculates the cross-validated c-index (concordance index) for measuring the predictive accuracy of a prognostic index under a copula-based dependent censoring model. Here the prognostic index is calculated as a compound covariate predictor based on the univariate Cox regression estimates. The expression and details are given in Section 3.2 of Emura and Chen (2016). The association between survival time and censoring time is modeled via the Clayton copula.
Usage
cindex.CV(t.vec, d.vec, X.mat, alpha, K = 5)
Arguments
t.vec |
Vector of survival times (time to death or time to censoring, whichever comes first) |
d.vec |
Vector of censoring indicators, 1=death, 0=censoring |
X.mat |
n by p matrix of covariates, where n is the sample size and p is the number of covariates |
alpha |
Association parameter of the Clayton copula; Kendall's tau = alpha/(alpha+2) |
K |
The number of cross-validation folds (K=5 is the defailt) |
Details
Currently, only the Clayton copula is implemented for modeling association between survival time and censoring time. The Clayton model yields positive association between survival time and censoring time with the Kendall's tau being equal to alpha/(alpha+2), where alpha > 0. The independent copula corresponds to alpha = 0.
If the number of covariates p is large (e.g., p>=100), the computational time becomes very long. Pre-filtering for covariates is recommended to reduce p.
Value
concordant |
Cross-validated c-index |
Author(s)
Takeshi Emura
References
Emura T, Chen YH (2016). Gene Selection for Survival Data Under Dependent Censoring: a Copula-based Approach, Stat Methods Med Res 25(No.6): 2840-57.
Examples
n=25 ### sample size ###
p=3 ### the number of covariates ###
set.seed(1)
T=rexp(n) ### survival time
U=rexp(n) ### censoring time
t.vec=pmin(T,U) ### minimum of survival time and censoring time
d.vec=as.numeric( c(T<=U) ) ### censoring indicator
X.mat=matrix(runif(n*p),n,p) ### covariates matrix
cindex.CV(t.vec,d.vec,X.mat,alpha=2) ### alpha=2 corresponds to Kendall's tau=0.5