A Pipeline of learners is a way to "chain" Learners together, where the output of one learner is used as output for the next learner. This can be used for things like screening, two stage machine learning methods, and Super Learning. A pipeline is fit by fitting the first Learner, calling chain() to create the next task, which becomes the training data for the next Learner. Similarly, for prediction, the predictions from the first Learner become the data to predict on for the next Learner.


R6Class object.


Learner object with methods for training and prediction. See Lrnr_base for documentation on learners.



Parameters should be individual Learners, in the order they should be applied.

Common Parameters

Individual learners have their own sets of parameters. Below is a list of shared parameters, implemented by Lrnr_base, and shared by all learners.


A character vector of covariates. The learner will use this to subset the covariates for any specified task


A variable_type object used to control the outcome_type used by the learner. Overrides the task outcome_type if specified


All other parameters should be handled by the invidual learner classes. See the documentation for the learner class you're instantiating