pROC带你轻松搞定ROC曲线绘制

一、数据的准备与pROC包的加载
  
# 加载MASS包library(MASS)# 加载pROC包library(pROC)# 加载aSAH数据集data(aSAH)

二、使用roc()进行ROC分析
  
#使用roc()来建立ROC对象roc1 <- roc(aSAH$outcome, aSAH$age,levels=c("Good", "Poor"))# 绘制ROC曲线并进行个性化设置plot(roc1,# 打印AUC值print.auc=TRUE,# 设置打印AUC值的x轴位置print.auc.x=0.4,# 设置打印AUC值的y轴位置print.auc.y=0.5,# 不生成ROC曲线下方多边形auc.polygon=FALSE,# 设置两个轴间隔的大小grid=c(0.4, 0.3),# 设置两个轴间隔的颜色grid.col=c("#FF8C00", "#FF8C00"),# 不显示最佳阈值的位置print.thres=FALSE,# 图形标题main="ROC curve for aSAH dataset",# ROC曲线颜色col="#FF2E63",# 绘制旧式的轴刻度标签legacy.axes=TRUE,# 打印AUC值时使用橙色文本print.auc.col="#FF8C00")

三、曲线的比较与p值的添加
  
#使用roc()来建立ROC对象roc2 <- roc(aSAH$outcome, aSAH$s100b, levels = c("Good", "Poor"))# 绘制 ROC 曲线plot(roc2, col = "blue", add=TRUE, # 增加曲线,print.auc = TRUE,main = "ROC curve for S100B",xlab = "1 - Specificity", ylab = "Sensitivity",print.auc.x=0.6,print.auc.y=0.6)

testp <- roc.test(roc1,roc2) # 检验两条曲线text(0.4, 0.2, # 设置添加p值的位置(x,y)labels=paste("P value =", format.pval(testp$p.value)),adj=c(0, 0.5)) # 在图上添加P值

小果还提供思路设计、定制生信分析、文献思路复现;有需要的小伙伴欢迎直接扫码咨询小果,竭诚为您的科研助力!

定制生信分析
服务器租赁
扫码咨询小果


往期回顾
| 
 01  | 
| 
 02  | 
| 
 03  | 
| 
 04  |