Calls flexsurv::flexsurvspline from package flexsurv.

Details

The distr prediction is estimated using the fitted custom distributions from flexsurv::flexsurvspline() and the estimated coefficients however the prediction takes place in this package and not in flexsurv for a much faster and more efficient implementation.

As flexible spline models estimate the baseline hazard as the intercept, the linear predictor, lp, can be calculated as in the classical setting. i.e. For fitted coefficients, \(\beta = (\beta_0,...,\beta_P)\), and covariates \(X^T = (X_0,...,X_P)^T\), where \(X_0\) is a column of \(1\)s: \(lp = \beta X\).

Dictionary

This Learner can be instantiated via the dictionary mlr_learners or with the associated sugar function lrn():

mlr_learners$get("surv.flexible")
lrn("surv.flexible")

Traits

  • Packages: flexsurv, pracma

  • Predict Types: distr, crank, lp

  • Feature Types: logical, integer, factor, numeric

  • Properties: weights

Custom mlr3 defaults

  • k:

    • Actual default: 0

    • Adjusted default: 1

    • Reason for change: The default value of 0 is equivalent to, and a much less efficient implementation of, LearnerSurvParametric.

References

Royston P, Parmar MKB (2002). “Flexible parametric proportional-hazards and proportional-odds models for censored survival data, with application to prognostic modelling and estimation of treatment effects.” Statistics in Medicine, 21(15), 2175–2197. doi: 10.1002/sim.1203.

See also

Author

RaphaelS1

Super classes

mlr3::Learner -> mlr3proba::LearnerSurv -> LearnerSurvFlexible

Methods

Public methods

Inherited methods

Method new()

Creates a new instance of this R6 class.

Usage

LearnerSurvFlexible$new()


Method clone()

The objects of this class are cloneable with this method.

Usage

LearnerSurvFlexible$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

# stop example failing with warning if package not installed learner = suppressWarnings(mlr3::lrn("surv.flexible")) print(learner)
#> <LearnerSurvFlexible:surv.flexible> #> * Model: - #> * Parameters: k=1 #> * Packages: flexsurv, pracma #> * Predict Type: distr #> * Feature types: logical, integer, factor, numeric #> * Properties: weights
# available parameters: learner$param_set$ids()
#> [1] "bhazard" "k" "knots" "bknots" #> [5] "scale" "timescale" "inits" "fixedpars" #> [9] "cl" "maxiter" "rel.tolerance" "toler.chol" #> [13] "debug" "outer.max"