我无法理解该varImp
函数如何用于带有caret
包的 randomForest 模型。在下面的示例中,特征 var3 使用 caretvarImp
函数的重要性为零,但底层的 randomForest 最终模型对特征 var3 的重要性不为零。为什么会这样?
require(randomForest)
require(caret)
rf <- train(x, y,
method = "rf",
trControl = trainControl(method = "oob"),
importance = TRUE,
verbose = TRUE,
tuneGrid = data.frame(mtry = num.predictors) )
fm <- rf$finalModel
> varImp(f)
rf variable importance
Overall
var1 100.00
var2 80.14
var3 0.00
> importance(fm)
%IncMSE IncNodePurity
var2 872.7935 40505276
var1 1021.4707 55682866
var3 273.0168 3078731