【发布时间】:2019-09-02 04:49:47
【问题描述】:
我正在对某些风险评估工具的表现进行荟萃分析。我的目标是汇总针对特定工具的几个有效性研究的 AUC 估计值。然而,我遇到了一些不提供 AUC 估计本身,而只提供 ROC 曲线的研究。 在这种情况下,我使用https://apps.automeris.io/wpd/ 来获取与每个数据点对应的值。 但是,问题在于,即使我有灵敏度和 1-特异性的值并且可以自己使用 R 绘制 ROC 曲线,我不知道使用哪个函数来计算曲线下面积(AUC)。 这是因为所有允许我计算 AUC 的 R 包/函数都使用基础数据作为输入。也就是说,预测变量和响应,而不是灵敏度和 1-特异性的值。
我已阅读 R 中“pROC”包的文档,但没有发现任何有用的信息。 我想我可以使用 integrate() 对绘图曲线下的区域进行积分?然而,问题在于我不会收到 AUC 的置信区间(我在荟萃分析中需要它)。
这是我从 ROC 曲线之一生成的数据(使用https://apps.automeris.io/wpd/):
# data table:
AUC_data_1 <- tibble("1-specificity" = c(-0.0031751800795011,
0.05421559172249585, 0.12174003874893036,0.20579144833428253,
0.3012443157265138, 0.502266554865223, 0.6205366469297053,
0.8417661384716209,
sensitivity = c(0.002260831241825745, 0.16879823941344285,
0.45899739288954267, 0.5804040305755962, 0.7849062327396981,
0.8634686874873007, 0.9710785309748188, 0.9977448923815709))
# roc curve generated from data:
plot(AUC_data_1)
我想根据这个 ROC 曲线计算 AUC。但是,由于我没有基础数据(即响应和预测器),我无法在 R 中使用 pROC 包。
【问题讨论】:
-
这看起来不像 ROC 曲线。第一个 1-specificity 值是负数,它没有锚定在 (0, 0) 和 (1,1)。
-
你是对的。这些数字只是近似值,因为它们是直接从图形本身中提取的。我应该在发布它们之前先清理它们。很抱歉。