Uno's estimator of cumulative/dynamic AUC for right-censored time-to-event data
Usage
sens.uno(Surv.rsp, Surv.rsp.new, lpnew, times)
spec.uno(Surv.rsp.new, lpnew, times)
AUC.uno(Surv.rsp, Surv.rsp.new, lpnew, times, savesensspec = FALSE)
Arguments
- Surv.rsp
A
Surv(.,.)
object containing to the outcome of the training data.- Surv.rsp.new
A
Surv(.,.)
object containing the outcome of the test data.- lpnew
The vector of predictors obtained from the test data.
- times
A vector of time points at which to evaluate AUC.
- savesensspec
A logical specifying whether sensitivities and specificities should be saved.
Value
AUC.uno
returns an object of class survAUC
.
Specifically, AUC.uno
returns a list with the following components:
- auc
The cumulative/dynamic AUC estimates (evaluated at
times
).- times
The vector of time points at which AUC is evaluated.
- iauc
The summary measure of AUC.
sens.uno
and
spec.uno
return matrices of dimensions times
x (lpnew +
1)
. The elements of these matrices are the sensitivity and specificity
estimates for each threshold of lpnew
and for each time point
specified in times
.
Details
The sens.uno
and spec.uno
functions implement the estimators
of time-dependent true and false positive rates proposed in Section 5.1 of
Uno et al. (2007).
The AUC.uno
function implements the estimator of cumulative/dynamic
AUC that is based on the TPR and FPR estimators proposed by Uno et al.
(2007). It is given by the area(s) under the time-dependent ROC curve(s)
estimated by sens.uno
and spec.uno
. The iauc
summary
measure is given by the integral of AUC on [0, max(times
)] (weighted
by the estimated probability density of the time-to-event outcome).
Uno's estimators are based on inverse-probability-of-censoring weights and
do not assume a specific working model for deriving the predictor
lpnew
. It is assumed, however, that there is a one-to-one
relationship between the predictor and the expected survival times
conditional on the predictor. Note that the estimators implemented in
sens.uno
, spec.uno
and AUC.uno
are restricted to
situations where the random censoring assumption holds.
References
Uno, H., T. Cai, L. Tian, and L. J. Wei (2007).
Evaluating prediction
rules for t-year survivors with censored regression models.
Journal
of the American Statistical Association 102, 527–537.
Examples
data(cancer,package="survival")
TR <- ovarian[1:16,]
TE <- ovarian[17:26,]
train.fit <- survival::coxph(survival::Surv(futime, fustat) ~ age,
x=TRUE, y=TRUE, method="breslow", data=TR)
lpnew <- predict(train.fit, newdata=TE)
Surv.rsp <- survival::Surv(TR$futime, TR$fustat)
Surv.rsp.new <- survival::Surv(TE$futime, TE$fustat)
times <- seq(10, 1000, 10)
AUC_Uno <- AUC.uno(Surv.rsp, Surv.rsp.new, lpnew, times)
names(AUC_Uno)
#> [1] "auc" "times" "iauc"
AUC_Uno$iauc
#> [1] 0.7552083