问题标签 [proc-r-package]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1033 浏览

r - 使用 ROCR 和 pROC (R) 计算平均 AUC 的差异

我正在使用caret包生成的 SVM-RFE 模型中的交叉验证数据(10 倍重复 5 次)。我知道包在计算指标时caretpROC包一起使用,但我需要使用ROCR包来获得平均 ROC。但是,我注意到使用每个包时的平均 AUC 值并不相同,所以我不确定是否应该不加区分地使用两个包。

我用来证明的代码是:

结果略有不同:

我注意到在许多情况下,平均 AUC 计算给了我不同的结果,例如在[5][22][25]

我尝试过使用其他 SVM-RFE 模型,但问题仍然存在。为什么会这样?难道我做错了什么?

0 投票
1 回答
163 浏览

r - 在 RFE 过程(插入符号)中更改 ROC 计算 (pROC) 的默认参数 - R

我正在计算一个使用函数(包)"ROC"作为度量的 SVM-RFE 模型。据我所知,该算法使用包的函数及其预定义的参数来优化 AUC 值。但是,我想将参数设置为,而不是因为在某些情况下,结果平均 AUC 是反向计算的(我的数据不是很好......)。此处的答案中解释了此问题:使用 ROCR 和 pROC (R) 计算平均 AUC 的差异rfecaretrferocpROCdirection"<""auto"

如何rocrfe计算中更改函数的默认参数值?

我试过这个简单的选项,但它不起作用:

0 投票
1 回答
1329 浏览

r - 在 pROC 包中指定正类

我想使用 pROC 包计算不同的分类指标(敏感性、特异性)。为此,我可以将包中的coords函数pROC用作:

在这里它被认为1是积极的类,即可能是最流行的类,但我不确定。我想知道,是否可以使用“0”作为正类。例如,您可以在caret包的confusionMatrix功能中这样做:

因为1积极和

作为0正类。我正在使用 pROC 包,因为它提供了其他功能,例如确定最佳截止值等,这在插入符号中是不可能的。但是,有没有办法在包中指定正负类pROC

0 投票
1 回答
1709 浏览

r - 使用 plot.roc() 函数在 R 图中的白色边距

我试图创建一个类似于网站上的图形。但是,我遇到了一个更基本的问题:我的 R 图中有一些我想去掉的空白。这是使用包pROC。我提供了一个可重现的示例来说明该问题:

上面的代码最终看起来像下图:

plot.roc() 问题:可重现的示例 #1 输出

如您所见,图像在 y 轴和图的最左侧部分之间有很多空白区域,图的右侧也是如此。该问题仅在使用时出现plot.roc()。我什至尝试制作我试图模拟的情节(使用网站上提供的代码),但最终还是得到了不同的图像(第一段中描述的图像的代码包含在下面):

plot.roc() 问题:可重现的示例 #2 输出

使用完全相同的代码的原始图片中没有空白

我的 R 设置可能有问题,尽管在第二台计算机上运行代码时问题仍然存在。有人可以提供帮助吗?

0 投票
2 回答
1450 浏览

r - R 和随机森林:插入符号和 pROC 如何处理正负类?

在过去的几天里,我一直在分析 R 实现随机森林的性能以及可用的不同工具,以获得:

  • 曲线下面积
  • 灵敏度
  • 特异性

因此,我使用了两种不同的方法:

  • 来自pROC库的mroc 和 coords以获得模型在不同截止点的性能。
  • 插入符号库中的混淆矩阵,以获得模型的最佳性能(AUC、准确度、灵敏度、特异性……)

关键是我已经意识到两种方法之间存在一些差异。

我开发了以下代码:

如果比较结果准确度数据变量,可以看到敏感性和特异性之间的关系是相反的。

也就是说,confusionMatrix的结果是:

但是如果我在坐标计算中寻找这样的敏感性和特异性,我发现它们交换了:

显然,灵敏度和特异性在坐标和混淆矩阵中是相反的。

考虑到confusionMatrix 正确识别了正类,我假设这是对敏感性和特异性的良好解释。

我的问题是:有什么方法可以强制坐标以我想要的方式解释正负类?

0 投票
2 回答
1147 浏览

r - 使用 for 循环或 sapply 创建 ROC 曲线

经过大量搜索,我找不到我的问题的答案。我想使用 for 循环或 sapply 使用 pROC 包生成 ROC 曲线。

我的数据库看起来像这样(只有 26 列和 74 行):

我可以“手动”制作 ROC 曲线:

对于“自动”,我尝试过:

第一条 roc 曲线总是 mnT1G:

添加其他 roc 曲线(data$Img 是来自另一个数据帧的所有图像名称(如 T1G、T01 等))。我知道他们都将是蓝色的:

但我得到这个错误:

roc.default(cor.datT$PA, cor.datT[paste("mn", i, sep = "")], 中的错误:预测器必须是数字或有序的。

for 循环也会发生同样的情况:

我检查了这些列,它们都是数字的。所以也许我的脚本中的类出了点问题?

0 投票
1 回答
23640 浏览

r - ROCR 错误:预测格式无效

从 glmnet 获得我的预测后,我尝试使用“ROCR”包中的“预测”函数来获取 tpr、fpr 等,但出现此错误:

我已经输出了 glmnet 预测和标签,它们看起来格式相似,因此我不明白这里什么是无效的。

代码如下,输入可以在这里找到input。这是一个小数据集,运行时间应该不会太长。

感谢你的帮助!

0 投票
2 回答
5960 浏览

r - 更改 ROC 图的比例

在运行逻辑回归后,我正在使用以下代码绘制 ROC 曲线。

绘制的 ROC 曲线如下所示(参见下面的链接)

在此处输入图像描述

  1. x 轴刻度不填充 who 图表。
  2. 如何更改 x 轴以报告 1 - 特别是?
0 投票
3 回答
2230 浏览

axis-labels - pROC ROC 曲线去除空白空间

我想用 pRoC 绘制 ROC 曲线。但是由于某种原因,x 轴的任一侧都有额外的空白空间,我无法使用 xlim 将其删除。一些示例代码:

在此处输入图像描述

我尝试了 pROC 帮助文件,但这并没有真正帮助我。更让我不解的是,Y轴看起来还不错……

我真的很感谢你的帮助!

0 投票
1 回答
1505 浏览

r - 如何在 ROC 曲线上绘制特定点

我正在使用pROC 包使用以下函数绘制接收器操作曲线:

我还想突出显示与特定 p 值相对应的曲线上的点。假设我知道哪些预测值对应于我的特定 p 值。我怎样才能做到这一点?