Last chance! 50% off unlimited learning
Sale ends in
bag
provides a framework for bagging classification or regression models. The user can provide their own functions for model building, prediction and aggregation of predictions (see Details below).bag(x, ...)## S3 method for class 'default':
bag(x, y, B = 10, vars = ncol(x), bagControl = bagControl(), ...)
bagControl(fit = NULL,
predict = NULL,
aggregate = NULL,
downSample = FALSE)
ldaBag
plsBag
nbBag
ctreeBag
svmBag
nnetBag
## S3 method for class 'bag':
predict(object, newdata = NULL, ...)
bag
produces an object of class bag
with elementsfit
object has the actual model fit for that bagged samples and the vars
object is either NULL
or a vector of integers corresponding to which predictors were sampled for that modelbagControl
ldaBag
, plsBag
, nbBag
, svmBag
and nnetBag
. Each has elements fit
, pred
and aggregate
.One note: when vars
is not NULL
, the sub-setting occurs prior to the fit
and predict
functions are called. In this way, the user probably does not need to account for the change in predictors in their functions.
When using bag
with train
, classification models should use type = "prob"
inside of the predict
function so that predict.train(object, newdata, type = "prob")
will work.
## A simple example of bagging conditional inference regression trees:
data(BloodBrain)
treebag <- bag(bbbDescr, logBBB, B = 10,
bagControl = bagControl(fit = ctreeBag$fit,
predict = ctreeBag$pred,
aggregate = ctreeBag$aggregate))
## An example of pooling posterior probabilities to generate class predictions
data(mdrr)
## remove some zero variance predictors and linear dependencies
mdrrDescr <- mdrrDescr[, -nearZeroVar(mdrrDescr)]
mdrrDescr <- mdrrDescr[, -findCorrelation(cor(mdrrDescr), .95)]
basicLDA <- train(mdrrDescr, mdrrClass, "lda")
bagLDA2 <- train(mdrrDescr, mdrrClass,
"bag",
B = 10,
bagControl(fit = ldaBag$fit,
predict = ldaBag$pred,
aggregate = ldaBag$aggregate),
tuneGrid = data.frame(.vars = c((1:10)*10 , ncol(mdrrDescr))))
Run the code above in your browser using DataLab