我正在使用插入符包来运行gbm模型。运行模型后,我使用varImp函数提取重要预测变量列表(显示前20个)。但是我想在字符列表中捕获预测变量的名称。我怎么做?从varImp返回的对象似乎没有列出预测变量名称的属性 - 只有变量重要性。这是一个示例:
gbmModel= train(target ~. , data = trainData, ....other params )
varimp = varImp(gbmModel, scale=TRUE)
str(varimp)
List of 3
$ importance:'data.frame': 77 obs. of 1 variable:
..$ Overall: num [1:77] 6.63 0 5.35 2.01 0 ...
$ model : chr "gbm"
$ calledFrom: chr "varImp"
- attr(*, "class")= chr "varImp.train"
## Display the important variables
varimp
gbm variable importance
only 20 most important variables shown (out of 77)
Overall
Var126 100.000
Var189 99.647
Var113 41.994
... And so on
我想要一个列表(“Var126”,“Var189”,“Var113”......)
提前致谢,
答案 0 :(得分:4)
根据您提供的输出结构,似乎
rownames(varimp$importance)
将返回您所追求的值。
答案 1 :(得分:0)
varImp(gbmModel, scale = TRUE)$importance
返回所有变量