我想使用fastbw
包中的函数rms
执行向后功能选择。我使用以下示例数据集PimaIndiansDiabetes
:
library(mlbench)
data(PimaIndiansDiabetes)
library(caret)
trControl <- trainControl(method = "repeatedcv",
repeats = 3,
classProbs = TRUE,
number = 10,
savePredictions = TRUE,
summaryFunction = twoClassSummary)
caret_model <- train(diabetes~.,
data=PimaIndiansDiabetes,
method="glm",
trControl=trControl)
library(rms)
reduced_model <- fastbw(caret_model$finalModel)
这给了我一个错误:
fastbw(caret_model $ finalModel)中的错误:适合没有设计 信息
我可以知道这是什么意思以及如何解决吗?
答案 0 :(得分:2)
您可能被困住了。 fastbw()
仅适用于rms
中的模型,即?fastbw
说:
fit:适合定义了“ Varcov(fit)”的对象(例如,来自“ ols”, “ lrm”,“ cph”,“ psm”,“ glmD”)
我尝试使用method="lrm"
适合您(lrm
是rms
的逻辑回归工具),但是得到了
错误:模型lrm不在插入符号的内置库中
我认为您将不得不寻找另一种逐步回归的方法,例如请参见this question:即先使用library(MASS)
,然后再使用method="glmStepAIC"
(在caret
之内)或stepAIC
(从头开始)。
对于我来说,为什么训练模型然后逐步逐步回归...