我正在尝试找出pROC软件包中使用了哪些算法来进行ROC分析。例如,哪种算法对应于条件'algorithm == 2'?我最近才开始将R与Python结合使用,因为它很容易找到CI估计值,显着性测试结果等。我的Python代码使用线性判别分析来获取二进制分类问题的结果。使用pROC软件包计算AUC,敏感性,特异性等的置信区间估计值时,我要做的就是加载我的数据并运行该软件包。使用pROC时获得的AUC与我的使用线性判别分析(LDA)的Python代码返回的AUC相同。为了能够报告一致的结果,我试图找出LDA是否是pROC中的算法选择之一?关于此问题或如何解决此问题的任何想法将非常有帮助。在哪里可以访问pROC的源代码?
答案 0 :(得分:0)
2011 BMC Bioinformatics paper中描述了pROC的核心算法。 PDF manual中介绍了稍后添加的一些算法。作为每个CRAN软件包,都可以从CRAN package page获得源代码。如今,许多R软件包都是also on GitHub。
要具体回答您的问题,很遗憾,我对使用algorithm
2计算ROC曲线的点的算法没有很好的参考。通过查看它,您将意识到它最终等同于标准的ROC曲线算法,尽管阈值的数量随着I tried to explain in this answer to a question on Cross Validated的增加而更为有效。但是您必须信任我(以及大多数计算ROC曲线的软件包)。
您使用的是LDA还是其他的二进制分类器与ROC分析无关,并且不在pROC的范围内。 ROC分析是一种评估预测,得分或更一般地从二进制分类器发出的信号的通用方法。它不评估二进制分类器本身,也不评估信号检测器,仅评估信号本身。这使得比较不同的分类方法变得非常容易,并且通常对成功进行ROC分析有帮助。