我已经很好地设置了我的随机森林模型,请参阅代码
modelRF <- randomForest(x=p$NDVI,
y=p$BushCategories,
ntree=500, do.trace=TRUE,
importance=TRUE, forest=TRUE, na.action=na.omit)
然后它给出了以下错误
Error in if (n == 0) stop("data (x) has 0 rows") :
argument is of length zero
请参阅下面的数据结构
'data.frame': 197 obs. of 5 variables:
$ Waypoint_No : chr "OMATSC028" "OMATSC200" "OMATSC072N" "OMATSC317" ...
$ Longitude : num 17.7 17.6 17.8 17.9 17.9 ...
$ Latitude : num -21.2 -21.2 -21.1 -20.9 -21.1 ...
$ NDVI : num 0.256 0.327 0.25 0.268 0.283 ...
$ BushCategories: Factor w/ 4 levels "0-25%","26-50%",..: 3 1 2 3 2 3 1 2 1
1 ...
可能是什么问题?
以下是我的数据集外观的示例
x<-c('0.256', '0.327', '0.25', '0.268')
y<-c('0-25%','26-50%','51-75%','76-100%')
data<-data.frame(x,y)
答案 0 :(得分:0)
你的公式(对randomForest的第一次输入)是错误的。您必须在公式中指定类类型和训练数据,以便算法知道要训练的内容。
在您的情况下,我假设您正在尝试从BushCategories预测NDVI。所以你应该使用的公式是NDVI~BushCategories。第二个要素是训练数据。所以,只需解决它,它应该适合你。