Evaluate()随机森林模型给出警告消息

时间:2018-08-15 17:23:16

标签: r random-forest factors

我已经在R studio中运行了RF模型,我正在尝试对其进行评估。我遇到了以下16条警告消息:

  

在Ops.factor(a,tr [i])中:“ <”对因子没有意义。评估通过给出以下结果进行:

     

class:ModelEvaluation

     

n个存在:39

     

n缺席:86

     

AUC:1

     

cor:1

     

最大TPR + TNR为:0.9999

但是,由于警告消息和threshold()的结果,我认为这有问题:

kappa spec_sens无遗患病率equal_sens_spec敏感性

阈值0.9999 0.9999 NA 0.9999 0.9999 0.9999

警告信息: 在max(which(x @ confusion [,“ fn”] == 0))中:   没有max的必填项;返回-Inf

这是我的代码:

str(finaldata1)
'data.frame':   125 obs. of  9 variables:
$ ID               : Factor w/ 125 levels "1","103(0)","103(1)",..: 1 34 35 36 46 107 108 109 110 116 ...
$ PA               : int  1 1 1 1 1 1 1 1 1 1 ...
$ SST              : num  24.1 21 21 21 22.2 ...
$ Salinity         : num  38.6 38.2 38.2 38.2 38.2 ...
$ Nitrogen         : num  0.523 0.886 0.891 0.854 0.916 ...
$ Phosphorus       : num  0.0056 0.0115 0.0117 0.0116 0.0131 ...
$ Depth            : num  -11 -7.4 -5.4 -5.08 -5.4 -23 -36.4 -24 6 -11 ...
$ Distance.to.coast: num  1527 1083 830 646 1084 ...
$ Slope            : num  1.263 0.293 0.299 2.089 0.383 ...

absence<-subset(finaldata1, PA=='0')
absence_dt<-data.frame(absence)
presence<-subset(finaldata1, PA=='1')
presence_dt<-data.frame(presence)
library(randomForest)
RF.model<-randomForest(as.factor(PA)~Salinity+Nitrogen+Phosphorus+Depth+Distance.to.coast+Slope, data=finaldata1)

library(dismo)
ev <- evaluate(presence_dt, absence_dt, RF.model)
threshold(ev)

任何建议或帮助都很好。

0 个答案:

没有答案