caret::train 复制预测变量

问题描述 投票:0回答:1

在 R 中,当尝试使用插入符构建 rpart CTree 时:

tree <- caret::train(LoanStatus ~ ., data = home_training, method = "rpart")

一切都很好,直到我尝试预测:

predictions <- predict(tree$finalModel, newdata = home_validation, type = "class")

这给了我错误:

Error in eval(predvars, data, env): object 'Gender1' not found

然后,我注意到 R 重复了我的一些预测变量(它们是因子):

varImp(tree)
输出:

ApplicantIncome 2.218022
CoapplicantIncome   4.564288
Education1  6.214741
LoanAmount  7.183707
LoanAmountTerm  1.554240
Married1    6.895146
PropertyArea1   5.806154
Gender1 0.000000
Dependents1 0.000000
Dependents2 0.000000
Dependents3 0.000000
SelfEmployed1   0.000000
PropertyArea2   0.000000

其中包含很多重复项。

如果我直接使用

rpart
进行同样的操作:
tree2 <- rpart(LoanStatus ~ ., home_training, method = "class")

不会给我任何错误,也没有重复的变量。

我想使用插入符号来完成此操作,因为它允许使用交叉验证。

我该如何解决这个问题?谢谢你。

r caret rpart
1个回答
0
投票

编辑:我必须输入 rpart.predict 而不是预测

© www.soinside.com 2019 - 2024. All rights reserved.