2

我正在尝试做一个物种分布模型,我正在遵循 Robert J. Hijmans 和 Jane Elith 的指南“用 R 进行物种分布建模”。

一切似乎都很好,但是当我尝试运行 RandomForest 时,我收到以下错误消息:

"Need at least two classes to do classification". 

我正在使用的代码是:

library(randomForest)
model <- factor (pa) ~ Bio3 + Bio2 + Bio16 + Bio11 + aspect + depth + dem + my_epikrat + corine_2000
rfabies <- randomForest(model, data=envtrain, na.action=na.omit, ntrees=1000)


Error in randomForest.default(m, y, ...) :
  Need at least two classes to do classification.

什么可能导致这个问题?谁能帮我?

4

1 回答 1

6

pa问题是转换为因子后您只有一个级别。很可能,您只有存在。

您可以通过以下方式检查:

table(factor(envtrain$pa))

如果您只有在场,则需要生成伪缺席。对于随机森林,这里建议使用与存在相同数量的伪缺失。

于 2013-06-27T11:19:00.557 回答