Hung and Chiang's estimator of cumulative/dynamic AUC for right-censored time-to-event data
Value
AUC.hc
returns an object of class survAUC
.
Specifically, AUC.hc
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.
Details
This function implements the estimator of cumulative/dynamic AUC proposed by
Hung and Chiang (2010). The estimator is based on
inverse-probability-of-censoring weights and does 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. 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).
Note that the estimator implemented in AUC.hc
is restricted to
situations where the random censoring assumption holds (formula (4) in Hung
and Chiang 2010).
References
Hung, H. and C.-T. Chiang (2010).
Estimation methods for time-dependent
AUC models with survival data.
Canadian Journal of Statistics
38, 8–26.
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_hc <- AUC.hc(Surv.rsp, Surv.rsp.new, lpnew, times)
AUC_hc
#> $auc
#> [1] 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
#> [8] 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
#> [15] 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
#> [22] 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.6564103 0.6564103
#> [29] 0.6564103 0.6564103 0.6564103 0.6564103 0.6564103 0.6564103 0.6564103
#> [36] 1.0210826 1.3857550 1.1669516 1.1669516 1.1669516 1.1669516 1.1669516
#> [43] 1.2641975 1.0132344 1.1145578 1.1145578 0.9586332 1.0054001 1.0054001
#> [50] 1.0054001 1.0054001 1.0054001 1.0054001 1.0054001 1.0054001 1.0054001
#> [57] 0.9689105 0.9689105 0.9689105 0.9689105 0.9689105 0.9689105 0.9689105
#> [64] 0.9903972 0.9903972 0.9903972 0.9903972 0.9903972 0.9903972 0.9903972
#> [71] 0.9903972 0.9903972 0.9903972 0.9903972 1.2379965 1.2379965 2.4759931
#> [78] 2.4759931 2.4759931 2.4759931 4.9519862 4.9519862 4.9519862 4.9519862
#> [85] 4.9519862 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
#> [92] 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
#> [99] 0.0000000 0.0000000
#>
#> $times
#> [1] 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
#> [16] 160 170 180 190 200 210 220 230 240 250 260 270 280 290 300
#> [31] 310 320 330 340 350 360 370 380 390 400 410 420 430 440 450
#> [46] 460 470 480 490 500 510 520 530 540 550 560 570 580 590 600
#> [61] 610 620 630 640 650 660 670 680 690 700 710 720 730 740 750
#> [76] 760 770 780 790 800 810 820 830 840 850 860 870 880 890 900
#> [91] 910 920 930 940 950 960 970 980 990 1000
#>
#> $iauc
#> [1] 0.9299145
#>
#> attr(,"class")
#> [1] "survAUC"