Splits data using leave-one-observation-out. This is identical to cross-validation with the number of folds set to the number of observations.
If this resampling is combined with the grouping features of tasks, it is possible to create custom splits based on an arbitrary factor variable, see the examples.
Dictionary
This Resampling can be instantiated via the dictionary mlr_resamplings or with the associated sugar function rsmp():
mlr_resamplings$get("loo")
rsmp("loo")
Examples
# Create a task with 10 observationstask = tsk("penguins")task$filter(1:10)# Instantiate Resamplingloo = rsmp("loo")loo$instantiate(task)# Individual sets:loo$train_set(1)loo$test_set(1)# Disjunct sets:intersect(loo$train_set(1), loo$test_set(1))# Internal storage:loo$instance # vector# Combine with group feature of tasks:task = tsk("penguins")task$set_col_roles("island", add_to ="group")loo$instantiate(task)loo$iters # one fold for each level of "island"
References
Bischl B, Mersmann O, Trautmann H, Weihs C (2012). Resampling Methods for Meta-Model Validation with Recommendations forEvolutionary Computation.
Returns the number of resampling iterations which is the number of rows of the task provided to instantiate. Is `NA` if the resampling has not been instantiated.