A custom resampling class where the training and test indices can be set manually.



R6::R6Class inheriting from Resampling.


  • id :: character(1)
    Stores the identifier of the learner.

  • task_type :: character(1)
    Stores the type of class this learner can operate on, e.g. "classif" or "regr". A complete list of task types is stored in mlr_reflections$task_types.

  • param_set :: paradox::ParamSet
    Description of available hyperparameters and hyperparameter settings.

  • predict_types :: character()
    Stores the possible predict types the learner is capable of. A complete list of candidate predict types, grouped by task type, is stored in mlr_reflections$learner_predict_types.

  • predict_type :: character(1)
    Stores the currently selected predict type. Must be an element of l$predict_types.

  • feature_types :: character()
    Stores the feature types the learner can handle, e.g. "logical", "numeric", or "factor". A complete list of candidate feature types, grouped by task type, is stored in mlr_reflections$task_feature_types.

  • properties :: character()
    Stores a set of properties/capabilities the learner has. A complete list of candidate properties, grouped by task type, is stored in mlr_reflections$learner_properties.

  • packages :: character()
    Stores the names of required packages.

  • fallback :: (Learner | NULL)
    Optionally stores a second Learner which is activated as fallback if this first Learner fails during train or predict. This mechanism is disabled unless you explicitly assign a learner to this slot. Additionally, you need to catch raised exceptions via encapsulation, see mlr_control().

  • hash :: character(1)
    Hash (unique identifier) for this object.


  • params(tag)
    character(1) -> named list()
    Returns a list of hyperparameter settings from param_set where the corresponding parameters in param_set are tagged with tag. I.e., l$params("train") returns all settings of hyperparameters used in the training step.

  • train(task)
    Task -> self
    Train the learner on the complete Task. The resulting model is stored in l$model.

  • predict(task)
    Task -> Prediction
    Uses l$model (fitted during train()) to return a Prediction object.


# Create a task with 10 observations task = mlr_tasks$get("iris") task$filter(1:10) # Instantiate Resampling rc = mlr_resamplings$get("custom") train_sets = list(1:5, 5:10) test_sets = list(5:10, 1:5) rc$instantiate(task, train_sets, test_sets) rc$train_set(1)
#> [1] 1 2 3 4 5
#> [1] 5 6 7 8 9 10