用R语言绘制ROC曲线

用R语言绘制ROC曲线1roc曲线的意义ROC曲线就是用来判断诊断的正确性,最理想的就是曲线下的面积为1,比较理想的状态就是曲线下的面积在0.8-0.9之间,0.5的话对实验结果没有什么影响。如图:2代码部分install.packages(“pROC”)install.packages(“ggplot2”)library(pROC)library(ggplot2)#建立曲线data(aSAH)…

大家好,又见面了,我是你们的朋友全栈君。

1、roc曲线的意义
ROC曲线就是用来判断诊断的正确性,最理想的就是曲线下的面积为1,比较理想的状态就是曲线下的面积在0.8-0.9之间,0.5的话对实验结果没有什么影响。
如图:
在这里插入图片描述
2、代码部分

install.packages("pROC")
install.packages("ggplot2")

library(pROC)
library(ggplot2)
#建立曲线
data(aSAH)
rocobj1<-roc(aSAH$outcome,aSAH$s100b)
rocobj2<-roc(aSAH$outcome,aSAH$wfns)
rocobj3<-roc(aSAH$outcome,aSAH$ndka)
#计算full AUC
auc(rocobj1)
auc(rocobj2)
auc(rocobj3)

#绘制曲线
plot(rocobj1)

#其他参数美化
plot(rocobj1,print.auc=TRUE,auc.polygon=TRUE,grid=c(0.1,0.2),grid.col=c("green","red"),max.auc.polygon=TRUE,auc.polygon.col="skyblue",print.thres=TRUE)

#计算partial  AUC选择关注一定范围数据

plot(rocobj1,print.auc=TRUE,auc.polygon=TRUE,partial.auc=c(0.8,0.4),partial.auc.focus="sp",grid=c(0.1,0.2),grid.col=c("green","red"),max.auc.polygon=TRUE,auc.polygon.col="skyblue",print.thres=TRUE,reuse.auc=FALSE)

#比较两个曲线,pROC提供三种方法比较“delong”, “bootstrap”或“venkatraman”
roc.test(rocobj1,rocobj2,method = "bootstrap")
#ggroc(功能仍在测试中)绘制Multiple curves
g3<-ggroc(list(s100b=rocobj,wfns=rocobj2,ndka=rocobj3))
g3

install.packages("pROC")
library("pROC")##roc
data(aSAH)
roc1<-roc(myData$label,myData$score)
roc2<-roc(myData2$label,myData2$score)
polt(roc1,col="blue")
polt.roc(roc2,add=TRUE,col="red")

3、实验结果
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/145334.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • mysql优化 面试_数据库优化工具

    mysql优化 面试_数据库优化工具点赞是一种积极的生活态度!有支持才有动力!微信搜索公众号【达摩克利斯之笔】获取更多资源,文末有二维码!前言数据库优化是一个老生常谈的问题,刚入门的小白或者工作N年的光头对这个问题应该都不陌生,你要面试一个中高级工程师那么他就想”哥俩好”一样那么粘,面试官肯定会问这个问题,这篇文章我们就和它哥俩好!而且这个问题就是一个送分题,数据库的优化方案基本就是那些,答案也都是固定的,大家只要好好…

    2022年10月24日
  • docker部署mysql的坏处_docker创建mysql数据库

    docker部署mysql的坏处_docker创建mysql数据库首先,确认创建容器的时候添加了-d参数,以守护进程的方式运行容器。或者,之前容器能够正常启动,突然启动不了,可以参考下面的解决方案。使用free命令查看内存状态[root@VM-16-15-centos~]#freetotalusedfreesharedbuff/cacheavailableMem:38263362077648504884220812

  • Spring Boot 中使用 @Transactional 注解配置事务管理

    Spring Boot 中使用 @Transactional 注解配置事务管理事务管理是应用系统开发中必不可少的一部分。Spring为事务管理提供了丰富的功能支持。Spring事务管理分为编程式和声明式的两种方式。编程式事务指的是通过编码方式实现事务;声明式事务基于AOP,将具体业务逻辑与事务处理解耦。声明式事务管理使业务代码逻辑不受污染,因此在实际使用中声明式事务用的比较多。

  • 音视频技术的高光时刻: LiveVideoStackCon 2019上海 音视频技术大会

    Mux流媒体专家PhilCluff在4月19、20日举办的LiveVideoStackCon2019上海音视频技术大会中发表了主题演讲,并根据自己在大会中的所见所闻…

  • c++将十进制数转化为二进制数_十六进制小数转二进制

    c++将十进制数转化为二进制数_十六进制小数转二进制#include"stdafx.h"#include&lt;iostream&gt;#include&lt;math.h&gt;usingnamespacestd;voidchange(doublex);voidchange(doublex){ doublen=0;…

  • createcompatibledc报错_Compatible

    createcompatibledc报错_CompatibleCreateCompatibleDC函数功能:该函数创建一个与指定设备兼容的内存设备上下文环境(DC)。函数原型:HDCCreateCompatibleDC(HDChdc);参数:hdc:现有设备上下文环境的句柄,如果该句柄为NULL,该函数创建一个与应用程序的当前显示器兼容的内存设备上下文环境。返回值:如果成功,则返回内存设备上下文环境的句柄;如果失败,则返回值为NULL

    2022年10月25日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号