Чтобы использовать varImp()
из caret
, вам нужно обучить модель с кареткой. Вы можете проверить наивные байесовские модели доступные , а для пакета, который вы вызываете, он будет с опцией method="naivebayes"
.
Если вы хотите просто подогнать его без перекрестной проверки, вы можете установить для trainControl значение method="none"
, как показано ниже, используя пример набора данных:
Grid = data.frame(usekernel=TRUE,laplace = 0,adjust=1)
mdl = train(Class ~ .,data=Sonar,method="naive_bayes",
trControl=trainControl(method="none"),
tuneGrid=Grid)
Мы можем проверить класс, а также получить значение переменной:
class(mdl$finalModel)
[1] "naive_bayes"
varImp(mdl)
ROC curve variable importance
only 20 most important variables shown (out of 60)
Importance
V11 100.00
V12 86.30
V10 82.64
V49 82.12
V9 81.97
V48 73.16
V13 72.60
V51 70.68
V47 69.99
V52 66.62
V46 66.27
V45 61.13
V4 58.45
V36 58.43
V5 54.32
V1 53.82
V44 53.37
V21 51.01
V35 49.93
V8 49.78
Для rminer
почти то же самое, вам нужно обучить модель, используя их функцию fit , но когда я проверил, кажется, что они используют naiveBayes из пакета e1071 для выполнения подгонки, поэтому не очень уверен, что это что вам нужно.