我正在使用ROCR库和预测函数来创建ROC曲线。我这样做(从Stack Overflow复制)
p_Lr <- predict(Model_Lr,newdata=Tst,type="response")
pr_Lr <- prediction(p_Lr, Tst$Survived)
prf_Lr <- performance(pr_Lr, measure = "tpr", x.measure = "fpr")
这项工作 - 一开始。在编程和运行各种代码后突然(我很遗憾无法准确说出哪些代码)行
pr_Lr <- prediction(p_Lr, Tst$Survived)
不再工作,并提供以下错误信息:
Error in nn$covariate : $ operator is invalid for atomic vectors using rocr library prediction
然后,如果我分离并添加像这样的ROCR库
detach(package:ROCR)
library(ROCR)
再次有效!任何人都知道为什么和做什么?
答案 0 :(得分:0)
使用the sos findFn function,其他两个包似乎有一个名为prediction
的函数:bootPLS和frailtypack。在ROCR之后加载任何这些包将掩盖ROCR的prediction
功能并阻止performance
工作。
通过重新附加ROCR,您将其prediction
功能放回search path前面。
另一种解决方案是明确使用ROCR的prediction
功能:
p_Lr <- predict(Model_Lr,newdata=Tst,type="response")
pr_Lr <- ROCR::prediction(p_Lr, Tst$Survived)
prf_Lr <- ROCR::performance(pr_Lr, measure = "tpr", x.measure = "fpr")