zachmayer / caretEnsemble

caret models all the way down :turtle:
Other
226 stars 75 forks source link

print.caretStack is hardcoded to say "ensemble of 2 base models" #251

Open gmonaie opened 4 years ago

gmonaie commented 4 years ago

Code:

> getS3method('print', 'caretStack')
function (x, ...) 
{
    n <- length(x$models)
    cat(paste("A", x$ens_model$method, "ensemble of 2 base models:", 
        paste(sapply(x$models, function(x) x$method), collapse = ", ")))
    cat("\n\nEnsemble results:\n")
    print(x$ens_model)
}
<bytecode: 0x7feea7772bc8>
<environment: namespace:caretEnsemble>

Minimal dataset:

set.seed(1)
dat <- caret::twoClassSim(100)
X <- dat[,1:5]
y <- dat[["Class"]]

Minimal, runnable code:

library(caretEnsemble)
models <- caretList(
  X, y, 
  methodList=c('glm', 'rpart', 'nnet'),
  trControl=trainControl(
    method="cv", 
    number=5,
    classProbs=TRUE, 
    savePredictions="final")
)
ens <- caretStack(models)
print(ens)