在R中计算AUC比率

5
我正在为一组物种生成生态位模型,并希望使用AUC作为生态位质量的度量指标。Steven Phillips是Maxent的开发者,在他的Maxent手册中提供了在R中计算AUC的代码。然而,我正在阅读报告部分AUC比率作为更强大和概念上合理的度量指标的论文。我认为我知道如何使用ROCR R包计算部分AUC,但是如何计算AUC比率呢?
以下是Phillips的教程脚本:
presence<-read.csv("bradypus_variegatus_samplePredictions.csv")
background<-read.csv("bradypus_variegatus_backgroundPredictions.csv")
pp<-presence$Logistic.prediction
testpp<-pp[presence$Test.or.train=="test"]
trainpp<-pp[presence$Test.or.train=="train"]
bb<-background$logistic

combined<-c(testpp,bb)
label<-c(rep(1,length(testpp)),rep(0,length(bb)))
pred<-prediction(combined,label)
perf<-performance(pred,"tpr","fpr")
plot(perf,colorize=TRUE)
performance(pred,"auc")@y.values[[1]] #RETURNS AUC

AUC<-function(p,ind){
    pres<-p[ind]
    combined<-c(pres,bb)
    label<-c(rep(1,length(pres)),rep(0,length(bb)))
    predic<-prediction(combined,label)
    return(performance(predic,'auc')@y.values[[1]])
}

b1<-boot(testpp,AUC,100) #RETURNS AUC WITH STANDARD ERROR
b1

任何建议或意见都将不胜感激!谢谢。
2个回答

2

不了解您的数据集和应用程序的具体情况,

  • 部分AUC:曲线下面积仅限于一部分。(通常选择它是因为它更健壮或者出于其他原因,就像您所说的那样)
  • AUC比率:一个AUC相对于另一个AUC的比率。(通常是某种参考)

所以...

  • 部分AUC比率:一个部分AUC相对于另一个部分AUC的比率。

那么您的意思是,AUC比率并不真正是衡量一个特定模型质量的指标,而更多地是在比较几个模型输出与某些参数变化时使用的度量指标? - Pascal
就我所知,這是普遍使用的正確詞語。然而,在您的領域中可能還有一些更具體的含義,我對生態位模型一無所知,因此在這方面無法提供幫助。不過,以下是我通常看到它如何使用的例子,希望對您有所幫助:http://www.drug-interactions.eu/eng/AUC.htm - John Colby
好的,你可能是对的。我想我可能误解了他们在我读的论文中用AUC比率展示的内容。感谢你的澄清! - Pascal

1

ROCR包可以使用fpr.stop=参数计算部分AUC值。正如John所说,比率就是将此值除以参考模型的相同计算结果。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接