没有足够清晰的预测来计算roc下的面积

没有足够清晰的预测来计算roc下的面积,r,roc,auc,R,Roc,Auc,我打算用AUC(roc(预测,标签))计算AUC,其中labels是1(x15)和0(x500)的数字向量,预测是一个概率从glm[二项式]推导而来的数字向量。它应该非常简单,但是auc(roc(预测,标签))给出了一个错误,表示“没有足够的清晰预测来计算roc曲线下的面积”。我一定在做傻事,但我不知道是什么。你能吗 代码是 library(AUC) #read the data, that come from a previous process of a species distributi

我打算用
AUC(roc(预测,标签))
计算AUC,其中
labels
1
(x15)和
0
(x500)的数字向量,
预测
是一个概率从
glm
[二项式]推导而来的数字向量。它应该非常简单,但是
auc(roc(预测,标签))
给出了一个错误,表示“没有足够的清晰预测来计算roc曲线下的面积”。我一定在做傻事,但我不知道是什么。你能吗

代码是

library(AUC)
#read the data, that come from a previous process of a species distribution modelling
prob<-read.csv("prob.csv")
labels<-read.csv("labels.csv")
#prob is
#labels is

roc(prob,labels)

#Gives the error (that I'm NOT interest in)
Error in `[.data.frame`(predictions, pred.order) : undefined columns selected
In addition: Warning messages:
1: In is.na(x) : is.na() applied to non-(list or vector) of type 'NULL'
2: In is.na(e2) : is.na() applied to non-(list or vector) of type 'NULL'
3: In is.na(e2) : is.na() applied to non-(list or vector) of type 'NULL'

#I change the format to numeric vector
prob<-as.numeric(prob[,2])
labels<-as.numeric(labels[,2])
#Verify it is a vector numeric
class(prob)
[1] "numeric"
class(labels)
[1] "numeric"

#call the roc functoin
roc(prob,labels)

Error in roc(modbrapred, pbbra) : # THIS is the error I0m interested in
  Not enough distinct predictions to compute area under the ROC curve.
In addition: Warning messages:
1: In is.na(x) : is.na() applied to non-(list or vector) of type 'NULL'
2: In is.na(e2) : is.na() applied to non-(list or vector) of type 'NULL'
3: In is.na(e2) : is.na() applied to non-(list or vector) of type 'NULL'    

Data is as follows

labels.csv
"","x"
"1",1
"2",1
"3",1
"4",1
"5",1
"6",1
...
"164",1
"165",1
"166",0
"167",0
"168",0
"169",0
"170",0
"171",0
"172",0 
...
"665",0

prob.csv
"","x"
"1",0.977465874525236
"2",0.989692657762578
"3",0.989692657762578
"4",0.988038430564019
"5",0.443188602491041
"6",0.409732585195485
...
"164",0.988607910625475
"165",0.986296936078692
"166",7.13529696560611e-05
"167",0.000419255989134081
"168",0.00295825183558019
"169",0.00182941235784709
"170",4.85601026999172e-09
"171",0.000953106471289961
"172",1.70252014430306e-05
...
"665",8.13413358866349e-08
库(AUC)
#阅读来自之前物种分布建模过程的数据
问题是我的“标签”是一个数字向量,但我需要一个因子。所以我改变了

labels <- factor(labels)

标签您能添加一个可复制的示例吗?请阅读。您应该编辑您的问题,包括我们可以复制/粘贴到R中以获得相同的错误。因为关于运行代码所需的
library()
调用。你是对的,这应该很容易,所以你到底是如何让它变得困难的还不清楚。谢谢你的评论。我现在包含了部分真实数据,但不是生成错误的代码,而且您仍然没有指定要使用的库。目前这个问题无法回答。请重新阅读MrFlicks评论,直到您完全理解。感谢您的提示。我现在上传了代码和数据