0

我有多个performance使用ROCR. 其中每一个都包含一个aucfpr/tpr的值。反过来,他们有多次测试运行的结果。所以,

length(first.perf.obj@y.values) 

给出 > 1 的东西。

我可以使用

plot(first.perf.obj, avg="vertical") 

如 ROCR 手册中所述。我想结合这些对象来计算和绘制它们的全局平均值。就像是

global.perf.obj <- combine.perf.objects(first.perf.obj, second.perf.obj, third.perf.obj)

有没有一种简单的方法可以做到这一点,或者我应该分解每个对象并手动计算值?

4

1 回答 1

0

我回去prediction为全局案例重新创建对象。

我正在调用prediction函数

global.prediction <- prediction(c(cls1.likelihood,
                                      cls2.likelihood,
                                      cls3.likelihood,
                                      cls4.likelihood,
                                      cls5.likelihood),
                                    c(duplicate.cols(cls1.labels, ncol(cls1.likelihood)),
                                      duplicate.cols(cls2.labels, ncol(cls2.likelihood)),
                                      duplicate.cols(cls3.labels, ncol(cls3.likelihood)),
                                      duplicate.cols(cls4.labels, ncol(cls4.likelihood)),
                                      duplicate.cols(cls5.labels, ncol(cls5.likelihood))),
                                    label.ordering=c(FALSE, TRUE))

forduplicate.cols只是构建一个data.frame重复的标签。

然后我可以通过例如获得全球案例的任何统计数据performance(global.prediction, "auc")

这有点慢,但我认为它比尝试组合来自多个performance对象的值更简单。

于 2013-05-09T14:59:48.103 回答