【问题标题】:ROCR Plot using R使用 R 绘制 ROCR 图
【发布时间】:2012-12-09 09:50:39
【问题描述】:

我有一个 csv 文件(制表符分隔),其中包含 2 列,看起来像这样

5   0
6   0
9   0
8   1
"+5000 lines similar lines"

我正在尝试使用 ROCR 创建 ROC 图。

这是我迄今为止尝试过的:

p<-read.csv(file="forROC.csv", head=TRUE, sep="\t")
pred<-prediction(p[1],p[2])

第二行给我一个错误:Error in prediction(p[1], p[2]) : Number of classes is not equal to 2. ROCR currently supports only evaluation of binary classification tasks.

我不确定错误是什么。我的 CSV 文件有问题吗?

【问题讨论】:

    标签: r csv roc


    【解决方案1】:

    我的猜测是您的数组索引设置不正确。如果您阅读该 CSV 文件,您应该会看到一个包含两列和 5,000 多行的 data.frame(考虑矩阵或二维数组,具体取决于您的背景)。

    因此,您当前对p[1]p[2] 的调用并不是特别有意义。您可能想要访问该 data.frame 的第一列和第二列,您可以使用p[,1] 的语法来访问第一列,p[,2] 来访问第二列。

    但是,您遇到的具体错误是抱怨您使用的“真相”变量不是二进制的。您的文件似乎设置为输出 1 和 0,因此一旦您正确访问数组,此错误可能会消失。但是如果以后遇到这种情况,请务必在使用前对真实数据进行二值化处理。例如:

    p[,2] <- p[,2] != 0
    

    如果值为零,则将值设置为 FALSE,对于列中的每个非零单元格,设置为 TRUE

    【讨论】:

      猜你喜欢
      • 2011-12-11
      • 2020-04-05
      • 2019-03-16
      • 2017-06-09
      • 1970-01-01
      • 2015-04-11
      • 2017-08-25
      • 1970-01-01
      • 2019-03-28
      相关资源
      最近更新 更多