Skip to contents

Given a Task, creates a model for the learning machine which can be used for predictions on new data.

Usage

train(learner, task, subset = NULL, weights = NULL)

Arguments

learner

(Learner | character(1))
The learner. If you pass a string the learner will be created via makeLearner.

task

(Task)
The task.

subset

(integer | logical | NULL)
Selected cases. Either a logical or an index vector. By default NULL if all observations are used.

weights

(numeric)
Optional, non-negative case weight vector to be used during fitting. If given, must be of same length as subset and in corresponding order. By default NULL which means no weights are used unless specified in the task (Task). Weights from the task will be overwritten.

Value

(WrappedModel).

Examples

training.set = sample(seq_len(nrow(iris)), nrow(iris) / 2)

## use linear discriminant analysis to classify iris data
task = makeClassifTask(data = iris, target = "Species")
learner = makeLearner("classif.lda", method = "mle")
mod = train(learner, task, subset = training.set)
#> Error in x[0, , drop = FALSE]: incorrect number of dimensions
print(mod)
#> Error in print(mod): object 'mod' not found

## use random forest to classify iris data
task = makeClassifTask(data = iris, target = "Species")
learner = makeLearner("classif.rpart", minsplit = 7, predict.type = "prob")
mod = train(learner, task, subset = training.set)
#> Error in x[0, , drop = FALSE]: incorrect number of dimensions
print(mod)
#> Error in print(mod): object 'mod' not found