r - 如何使用 pROC 或 ROCR 包在 R 中根据预测的类概率计算 ROC 曲线下的面积?

标签 r r-caret roc auc

我使用 caret 库来计算二元分类问题的类别概率和预测,使用 10 折交叉验证和 5 次重复。

现在我有TRUE(每个数据点的观察值)值、PREDICTED(通过算法)值、0 级概率1 类概率,算法使用它来预测类标签。

现在如何使用 ROCRpROC 库创建一个 roc 对象,然后计算 auc 值?

假设我将所有这些值存储在 predictions 数据框中。例如predictions$predpredictions$obs 分别是预测值和真实值,依此类推...

最佳答案

由于您没有提供可重现的示例,我假设您有一个二元分类问题,并且您预测 ClassGoodBad

predictions <- predict(object=model, test[,predictors], type='prob')

你可以这样做:

> pROC::roc(ifelse(test[,"Class"] == "Good", 1, 0), predictions[[2]])$auc
# Area under the curve: 0.8905

关于r - 如何使用 pROC 或 ROCR 包在 R 中根据预测的类概率计算 ROC 曲线下的面积?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29887887/

相关文章:

r - 在插入符号 : creating multiple different size partitions for testing/training/validation

r - 从随机森林分类中绘制 ROC 曲线

train() 中的 ROC 度量,插入符包

r - 如何访问原子向量属性?

r - 剪切树状图

r - 由连字符组成的数字序列,而不用连字符连接单个出现的数字

r - 如何避免 KNN 模型中的时间泄漏?

r - 使用data.table根据另一列中的类别计算出现的百分比

r - 提取插入符号中 glmnet 模型最佳调整参数的系数

python - sklearn [python]的roc曲线