首页 > 解决方案 > R:pROC 包:输入数据作为命中率和误报率?

问题描述

问:有没有办法通过 pROC R 包将命中率和误报率形式的数据导入 roc 对象?

背景:在认知心理学中,我们使用术语“命中率”,相当于灵敏度和“误报率”,相当于 1-特异性。一个常见的任务是识别记忆测试。例如,参与者首先研究一个单词列表(我们将其称为“目标”)。后来,他们参加了一项测试,在其中他们查看了一系列单词,其中一些是早期列表中的目标,而其中一些是早期列表中没有的“诱饵”。对于每个单词,参与者回答是(我以前研究过这个词)或否(我以前没有研究过这个词),然后他们也给出了置信度等级(例如,从 50% 置信度 [只是猜测] 到 100%信心[绝对确定])。

命中率是参与者正确回答“是”的目标词的比例。误报率是参与者错误地说“是”的诱饵词的比例。通过计算多个置信度(又称“箱”)的累积命中率和误报率,我们可以绘制经验 ROC 曲线,其中 x 轴为误报率,y 轴为命中率。

因此,假设我有 5 个置信区间内的累积命中率和误报率形式的识别记忆数据。例如:误报率:0.05、0.11、0.20、0.28、0.45 命中率:0.45、0.52、0.57、0.59、0.62

我想使用 pROC 包将这些数据放入一个 roc 对象中,以便我可以拟合曲线并计算部分 AUC。有没有办法做到这一点?谢谢你,~杰森芬利

标签: rrocproc-r-package

解决方案


有没有办法做到这一点?

简短的回答:没有。

长答案:

  1. 您无法从混淆矩阵中构建 ROC 曲线如果您拥有所有混淆矩阵,则可能会这样做,但这显然不是您的情况。像这样构建的任何曲线都不是 ROC 曲线。
  2. 即使您能够使用上面的第 1 点构建 ROC 曲线并计算 AUC,所有额外的功能,如误差估计(方差、CI)、平滑等,都需要完整的、未汇总的数据。

推荐阅读