如何使用R软件画ROC曲线?
作者: applebear0507 邮箱: bethune0507@163.com
1.ROC曲线的基础知识
1.1 ROC曲线
ROC(receiver operating characteristic curve )又称受试者工作特征曲线,是以取不同阳性判断标准时的灵敏度为纵坐标,误诊率(1-特异度)为横坐标绘制所得的曲线。它表示灵敏度与特异度之间的相互关系。
1.2 AUC
AUC (Area Under Curve) 被定义为ROC曲线下的面积,显然这个面积的数值不会大于1。又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围一般在0.5和1之间。
2. 使用pROC绘制ROC曲线
2.1画单个指标的ROC曲线
'''
install.packages("pROC")
library(pROC)
print(data(package='pROC')) #查看包自带的数据集
data(aSAH) #加载自带的数据集
head(aSAH) #查看一下
roc1 <- roc(aSAHs100b, plot=TRUE)
plot(roc1, print.thres="best", print.thres.best.method="youden")
ci.auc(roc1) # 95% CI: 0.6301-0.8326 (DeLong)
'''
3. 小结
pROC包真好用
plot(roc2, print.thres="best", print.thres.best.method="youden")计算最佳阈值
ci.auc(roc2)计算可信区间
roc.test比较两条ROC曲线的AUC