我想使用递归特征消除方法来选择最重要的特征,然后将它们放入机器学习模型中。我将 RFE 的代码写为
library(mlbench)
library(caret)
control <- rfeControl(functions=rfFuncs, method="cv", number=10)
results <- rfe(train[,1:134], train[,135], sizes=c(1:134),rfeControl=control)
print(results)
predictors(results)
然后代码给了我最重要的特征:[1]“a”“b”“c”“d”“e”最后我把这些特征放在模型中:
weighted_fit <- train(x ~ a+b+c+d,
data = train,
method = 'glmnet',
trControl = ctrl)
我的问题是每次 RFE 为我提供 [1] "a" "b" "c" "d" "e" 的顶级功能时,我必须将它们编辑为 a+b+c+d 并将它们放入模型中但是,如果手动选择了 50 个特征作为顶级特征,则无法对其进行编辑并将其放入模型中,有什么方法可以自动执行此操作。我非常感谢您的意见。