R语言画ROC曲线总结

作者: 拓端tecdat | 来源:发表于2020-03-21 11:32 被阅读0次

原文链接:http://tecdat.cn/?p=10963

在本文中,我描述了如何在CRAN中搜索用于绘制ROC曲线的包,并重点介绍了六个有用的包。

尽管我从一些我想谈论的软件包开始就有了一些想法,例如ROCRpROC(我在过去发现它们很有用),但我还是决定使用 相对较新的软件包pkgsearch来搜索CRAN并查看其中的内容。该package_search()函数将文本字符串作为输入,并使用基本的文本挖掘技术来搜索所有CRAN。

library(tidyverse) # for data manipulation library(dlstats) # for package download stats library(pkgsearch) # for searching packages

need-to-insert-img

经过一番尝试和错误之后,我确定了以下查询,其中包括许多与ROC相关的有趣软件包。

rocPkg <- pkg_search(query="ROC",size=200)

need-to-insert-img

rocPkgShort <- rocPkg %>% filter(maintainer_name != "ORPHANED", score > 190) %>% select(score, package, downloads_last_month) %>% arrange(desc(downloads_last_month)) head(rocPkgShort)

need-to-insert-img

## # A tibble: 6 x 3 ## score package downloads_last_month ## ## 1 690. ROCR 56356 ## 2 7938. pROC 39584 ## 3 1328. PRROC 9058 ## 4 833. sROC 4236 ## 5 266. hmeasure 1946 ## 6 1021. plotROC 1672

为了完成选择过程,我做了艰苦的工作,浏览软件包的文档,以挑选出我认为通常对大多数数据科学家有用的内容。下图使用了Guangchuang Yu的dlstats软件包,查看我选择分析的六个软件包的下载历史记录。

library(dlstats) shortList <- c("pROC","precrec","ROCit", "PRROC","ROCR","plotROC") downloads <- cran_stats(shortList) ggplot(downloads, aes(end, downloads, group=package, color=package)) + geom_line() + geom_point(aes(shape=package)) + scale_y_continuous(trans = 'log2')

need-to-insert-img

need-to-insert-img

2005年

以下代码ROCR使用包装随附的综合数据集设置并绘制默认的ROC曲线。在整个文章中,我将使用相同的数据集。

library(ROCR) ## Loading required package: gplots ## ## Attaching package: 'gplots' ## The following object is masked from 'package:stats': ## ## lowess # plot a ROC curve for a single prediction run # and color the curve according to cutoff. data(ROCR.simple) df <- data.frame(ROCR.simple) pred <- prediction(df$predictions, df$labels) perf <- performance(pred,"tpr","fpr") plot(perf,colorize=TRUE)

need-to-insert-img

## Loading required package: gplots

## ## Attaching package: 'gplots'

## The following object is masked from 'package:stats': ## ## lowess

need-to-insert-img

2010

pROC也受到数据科学家的欢迎。我喜欢AUC在图中绘制曲线下面积的置信区间非常容易。

need-to-insert-img

need-to-insert-img

2014年

该roc.curve()函数 会绘制出干净整齐的ROC曲线 。

need-to-insert-img

2014年

该软件包提供了许多功能丰富的ggplot()几何图形 。

need-to-insert-img

2015年

precrec是另一个用于绘制ROC和精确调用曲线的库。

## ## Attaching package: 'precrec'

## The following object is masked from 'package:pROC': ## ## auc

need-to-insert-img

该evalmod()函数的参数选项使生成各种模型特征的基本图变得容易。

need-to-insert-img

2019

ROCit是一个用于绘制ROC曲线和其他二进制分类可视化效果的新程序包 ,并且正在迅速普及。

## Warning: package 'ROCit' was built under R version 3.5.2

need-to-insert-img

下图显示了正响应和负响应的累积密度。KS统计数据显示两条曲线之间的最大距离。

ksplot(ROCit_obj)

need-to-insert-img

need-to-insert-img

相关文章

  • R语言画ROC曲线总结

    原文链接:http://tecdat.cn/?p=10963 在本文中,我描述了如何在CRAN中搜索用于绘制ROC...

  • R语言 ROC曲线

    ROC曲线(受试者工作特征, Receiver Operating Characteristic) 可以简单、直观...

  • R语言绘制绘制ROC和PR曲线(总结)

    本节目标: (1)总结常用的绘制ROC和PR曲线的R包(2)生存预测模型的时间依赖性ROC曲线 第一部分:总结常用...

  • 什么是 ROC AUC

    本文结构: 什么是 ROC? 怎么解读 ROC 曲线? 如何画 ROC 曲线? 代码? 什么是 AUC? 代码? ...

  • R语言ROC曲线包

    R语言有多种包可以画ROC曲线,如比较出名的有ROCR包,pROC包等。如有2个以上变量,则可单独画在一张图上,也...

  • 机器学习面试题集-如何画 ROC 曲线

    本文结构: 什么是 ROC? 怎么解读 ROC 曲线? 如何画 ROC 曲线? 代码 什么是 AUC? 代码 RO...

  • 【r<-ROC|包】分析与可视化ROC——plotROC、

    在【r<-绘图|ROC】ROC的计算与绘制这篇文章中我讲了ROC曲线的本质以及如何计算和绘制ROC曲线。注意,我这...

  • 【R语言】pROC绘制ROC曲线

    前面给大家介绍了ROC曲线,相信大家对ROC以及一些常见的机器学习的概念,如正样本,负样本,真阳性,假阳性,假阴性...

  • 使用 pROC包进行ROC分析

    可以进行ROC分析和ROC 曲线展示的R包。 #1. 安装 #2. 数据导入 #3. ROC分析 ##3.1 使...

  • ggplot2-ROC曲线美化

    将data整理为这样的表格 而后使用ggplot2画ROC曲线 出来的ROC曲线为,字体很大很清楚。 aes(x ...

网友评论

    本文标题:R语言画ROC曲线总结

    本文链接:https://www.haomeiwen.com/subject/uvlyyhtx.html