Skip to contents

Calls survAUC::AUC.hc().

Assumes random censoring.

Details

All measures implemented from survAUC should be used with care, we are aware of problems in implementation that sometimes cause fatal errors in R. In future updates some of these measures may be re-written and implemented directly in mlr3proba.

Dictionary

This Measure can be instantiated via the dictionary mlr_measures or with the associated sugar function msr():

MeasureSurvHungAUC$new()
mlr_measures$get("surv.hung_auc")
msr("surv.hung_auc")

Parameters

IdTypeDefaultLevels
integratedlogicalTRUETRUE, FALSE
timesuntyped-

Meta Information

  • Type: "surv"

  • Range: \([0, 1]\)

  • Minimize: FALSE

  • Required prediction: lp

Parameter details

  • integrated (logical(1))
    If TRUE (default), returns the integrated score (eg across time points); otherwise, not integrated (eg at a single time point).

  • times (numeric())
    If integrated == TRUE then a vector of time-points over which to integrate the score. If integrated == FALSE then a single time point at which to return the score.

References

Hung H, Chiang C (2010). “Estimation methods for time-dependent AUC models with survival data.” The Canadian Journal of Statistics / La Revue Canadienne de Statistique, 38(1), 8–26. https://www.jstor.org/stable/27805213.

Super classes

mlr3::Measure -> mlr3proba::MeasureSurv -> mlr3proba::MeasureSurvAUC -> MeasureSurvHungAUC

Methods

Inherited methods


Method new()

Creates a new instance of this R6 class.

Usage


Method clone()

The objects of this class are cloneable with this method.

Usage

MeasureSurvHungAUC$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

library(mlr3)

# Define a survival Task
task = tsk("lung")

# Create train and test set
part = partition(task)

# Train Cox learner on the train set
cox = lrn("surv.coxph")
cox$train(task, row_ids = part$train)

# Make predictions for the test set
p = cox$predict(task, row_ids = part$test)

# Integrated AUC score
p$score(msr("surv.hung_auc"), task = task, train_set = part$train, learner = cox)
#> surv.hung_auc 
#>      1.172293 

# AUC at specific time point
p$score(msr("surv.hung_auc", times = 600), task = task, train_set = part$train, learner = cox)
#> surv.hung_auc 
#>      1.568774 

# Integrated AUC at specific time points
p$score(msr("surv.hung_auc", times = c(100, 200, 300, 400, 500)), task = task, train_set = part$train, learner = cox)
#> surv.hung_auc 
#>     0.9826444