【问题标题】:Issue using 'ROC' metric in caret train function in R在 R 的插入符号训练函数中使用“ROC”度量的问题
【发布时间】:2015-08-10 12:21:33
【问题描述】:

我有一个包含两个类的不平衡数据集,因此我认为我可以使用 ROC 作为指标而不是 Accuracy 来使用 caret 包在 R 中调整我的模型(我正在尝试不同的方法,例如 rpart、rf..etc)。我认为我们可以提取概率并使用 ROC 作为决策树类型算法中的指标,也可以使用插入符号。我使用下面插入符号中的数据集来说明我的问题。此数据中有三个类,但为了说明目的,我重新定义并创建了两个类。我不明白为什么下面的代码会出现这个错误(当我改变方法时,我一直收到同样的错误)。感谢您的帮助。

'train.default(x, y, weights = w, ...) 中的错误:无法确定最终调整参数 另外:警告信息: 1:在nominalTrainWorkflow(x = x, y = y, wts = weights, info = trainInfo, : 在重新采样的性能测量中存在缺失值。 2:在 train.default(x, y, weights = w, ...) 中:在聚合结果中发现缺失值'

library(caret) 
data(iris)

iris$Species=as.character(iris$Species)
iris$Species[which(iris$Species=='virginica')]='versicolor'
iris$Species=as.factor(iris$Species)

fitControl <- trainControl(method = "cv",number=5,classProbs = TRUE,summaryFunction = twoClassSummary)

RF=train(Species ~ ., data = iris, method="rpart",metric="ROC", trControl=fitControl)

【问题讨论】:

  • 上面的代码对我有用。实际错误是什么?
  • 这是我得到的错误。任何方法都不适用于我。我不知道为什么
  • train.default(x, y, weights = w, ...) 中的错误:无法确定最终调整参数另外:警告消息:1:在nominalTrainWorkflow(x = x, y = y, wts = weights, info = trainInfo, : 在重新采样的性能测量中存在缺失值。2: 在 train.default(x, y, weights = w, ...) 中:在聚合结果中发现缺失值'跨度>

标签: r r-caret


【解决方案1】:

这可能是您的 r 和 caret 版本的问题。 更新 caret 包时,请确保您的 r 版本也保持更新。

我之前遇到过这个错误,更新 r 版本解决了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-24
    • 2015-09-17
    • 2015-08-02
    • 2020-12-14
    • 2018-05-28
    • 2015-12-30
    • 2018-11-11
    • 1970-01-01
    相关资源
    最近更新 更多