R语言caret包建模报未识别重采样方法错误如何解决?
问题原因
- 核心错误是
trainControl的method参数拼写错误:填写的"repeateadcv"不存在,caret包中重复k折交叉验证的正确参数值为"repeatedcv"。 - 拼写错误导致caret无法识别对应的重采样方法,因此先触发
repeats参数无意义的警告,后续模型训练时直接抛出「未识别的重采样方法」报错。
解决方法
直接修正trainControl中的method参数拼写即可,修正后的完整代码如下:
# 创建训练控制函数 ctrl <- trainControl(method = "repeatedcv", number = 10, repeats = 5, summaryFunction = twoClassSummary, classProbs = TRUE) # 构建GBM基准分类模型 model1 <- train(is_attributed ~ ., data = df1, method = "gbm", verbose = FALSE, metric = "ROC", trControl = ctrl)
内容的提问来源于stack exchange,提问作者Matheus Oliveira
相关产品推荐
相关产品推荐

