我试图弄清楚 pROC 包中使用了哪些算法来进行 ROC 分析。例如,什么算法对应于条件“算法==2”?我最近才开始将 R 与 Python 结合使用,因为可以轻松找到 CI 估计、显着性测试结果等。我的 Python 代码使用线性判别分析来获得二进制分类问题的结果。当使用 pROC 包计算 AUC、敏感性、特异性等的置信区间估计时,我所要做的就是加载我的数据并运行包。我在使用 pROC 时得到的 AUC 与我使用线性判别分析 (LDA) 的 Python 代码返回的 AUC 相同。为了能够报告一致的结果,我试图找出 LDA 是否是 pROC 中的算法选择之一?关于这个或如何解决这个问题的任何想法都会非常有帮助。我在哪里可以访问 pROC 的源代码?
问问题
335 次
1 回答
0
pROC 的核心算法在2011 BMC Bioinformatics 论文中有所描述。稍后添加的一些算法在PDF 手册中进行了描述。与每个 CRAN 包一样,源代码可从CRAN 包页面获得。现在有很多 R 包,它也在 GitHub 上。
为了具体回答您的问题,不幸的是,我没有很好的参考算法来计算 ROC 曲线的点algorithm
2。通过查看它,您会意识到它最终等同于标准 ROC 曲线算法,尽管效率更高当阈值数量增加时,正如我试图在这个答案中解释的那样交叉验证的问题。但是你必须相信我(以及大多数计算 ROC 曲线的软件包)。
您使用哪种二元分类器,无论是 LDA 还是其他,都与 ROC 分析无关,并且超出了 pROC 的范围。ROC 分析是评估来自二元分类器的预测、分数或更一般地信号的通用方法。它不评估二元分类器本身或信号检测器,只评估信号本身。这使得比较不同的分类方法变得非常容易,并且通常有助于 ROC 分析的成功。
于 2019-04-03T19:46:02.190 回答