前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【科研猫·统计】ROC曲线(2):一码到底

【科研猫·统计】ROC曲线(2):一码到底

作者头像
用户6317549
发布2019-12-17 12:11:51
2.8K2
发布2019-12-17 12:11:51
举报
文章被收录于专栏:科研猫科研猫
上一期《点击可入:【统计】 ROC曲线(1) -

ROC曲线作为评估模型效能的工具,其使用频率是极其高的,平时我们在做ROC分析的时候会遇到很多问题,比如:

  • 如何同时绘制多个模型的ROC曲线;
  • 如何计算评估模型效能的参数;
  • 如何通过统计分析比较模型优劣.....

这些问题都一直困扰着很多人。为啥困扰呢?因为没有软件可以把这些分析一下子都做了!打个比方吧,SPSS是做统计分析的权威软件之一,它就能够轻松帮我们制作ROC曲线,但是,也仅仅只能绘制ROC曲线了。画出来的图形是往往这样的:

这样的结果呢,从画图上来说,也算是满足我们的要求的。但是,我们评估模型的好坏不仅仅是做一个ROC曲线,看看AUC面积就结束了,还要看很多指标,比如上一期我们讲到的NPV(阴性预测值)PPV(阳性预测值)Specificity(特异性)Sensitivity(灵敏度)Accuracy(准确度)等数值,这些数值怎么计算呢?

这个时候我们就要讲到上期我们提及的约登指数了。在这里我们不再重复赘述约登指数的概念。那SPSS能否通过约登指数确定最优cut-off值,然后计算上面的这些指标呢?答案是:不能!网上有很多人百度查找解决方案,因为ROC图出来了,结果一堆模型评估的数值出不来,导致很难往下写文章。

英雄往往都是在大家走投无路的时候出现的,因为我们的技术大牛切身体会到大家在做ROC分析时的苦楚,所以,开发了一款全能工具。是时候祭出我们的必杀技了!终结者系列之“ROC曲线终结者”。

我们的工具是基于R代码开发的,所以如果没有任何R语言基础的同学,建议先行从R语言基础学起来,哪怕不会写R代码,最起码得懂怎么运行吧。没有R语言基础的,请务必点击这里:《「 R语言系列 」干货直通车,想学哪里点哪里》系列课程,多的不说,把前三节看会了是必须的。然后,来看看我们的结果截图:

是不是很赞!这个工具的几大特点:

  1. 多模型绘图,一键生成(最多可支持5条ROC曲线)
  2. 支持全方位模型评估(多达14种参数)
  3. 支持多模型间比较(自动计算两两比较)
  4. 输入文件简单易学(excel直接导入)
  5. 矢量图形输出(直接输出发表级别矢量图)

下面我们就来看看这个工具怎么用吧。

导入数据

第一步

上面刚刚讲过我们的数据是excel直接导入即可,所以,数据格式其实很简单,看一下就明白了。代码会自动读入一个名为data.xlsx的Excel文件,这个文件的格式如下:

就跟咱们平时用SPSS或者GraphPad做ROC曲线分析的时候一摸一样,一列二分类变量(比如预后好/差),几列测量变量(比如肿瘤指标的高低、CT上肿瘤的大小等等)。我们要做的就是把数据拷贝到这个文件中就万事大吉了。我们的分析工具最多可以支持5个测量变量哦。

开始分析

第二步

数据导入之后,用RStudio打开我们的R代码:ROC_Terminator.R。直接“全选(Ctrl+A)”-“运行(Ctrl+Enter)“即可。然后只需等待几秒,数据结果(共6个文件)就会乖乖出现在你的代码所在的目录下了。如下所示:

这六个文件分别是:(1)整合的ROC曲线(不同配色、线型区别,含AUC值);(2)平滑拟合的ROC曲线;(3)带有95%置信区间(Confidence Interval,CI)的ROC曲线带状图;(4)带有95%置信区间的ROC曲线箱线图;(5)14种模型评估参数表;(6)多模型两两间Delong统计比较结果表。

咱们科研猫的技术向来都是很少说废话空话的技术流、实干派,所以,看看这些分析结果,各位傲娇的科研喵们可还满意?

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 科研猫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档