我最近发现了pROC
包,用于获取AUC
。在帮助部分,他们给出了以下示例:
library("pROC")data(aSAH)auc(aSAH$outcome, aSAH$s100b)
在上述代码中,outcome
是一个factor
类型,而s100b
是numerical
类型。
我的问题是,在这种情况下AUC
是如何工作的?它对s100b
应用了什么阈值?还是说阈值并不重要?
编辑1上述代码结果显示AUC = 0.73
。我如何知道选择了哪个阈值来得到这个值?
回答:
pROC
包中的auc
函数中的AUC是ROC曲线下的面积。幕后,该函数首先调用了roc
函数,因此你所做的相当于:
myroc <- roc(aSAH$outcome, aSAH$s100b)auc(myroc)
ROC曲线是通过计算所有可能阈值的敏感性和特异性得到的。你可以使用plot
函数来可视化这条曲线,并以灰色显示AUC:
plot(myroc, auc.polygon=TRUE)