在小型数据帧上运行Random Forest时出现长向量错误

时间:2016-06-10 09:24:56

标签: r random-forest

我正在尝试使用randomForest包在R中包含390343行的数据集上运行RandomForest。我收到此错误:

randomForest.default(m,y,...)中的错误:   .Fortran

不支持long向量(参数24)

由于我的行数非常小,因此我无法弄清楚错误的原因。

使用的数据摘要是:

summary(train1)

training data summary

我在64版Windows服务器2012上使用128 GB RAM和Intel Xeon CPU(E5-2690 v2)在R版本3.0.2(2013-09-25)上运行此程序

用于运行RF的命令是

RFmod<-randomForest(Train_flag~., data=train1,ntree=3000,
                mtry=4,replace=TRUE,keep.forest=TRUE,importance=TRUE)

2 个答案:

答案 0 :(得分:3)

尝试使用proximity = FALSE。当此参数设置为TRUE时,算法将计算邻近矩阵,当数据帧太大时可能会出现问题。

答案 1 :(得分:0)

randomForest计算中行数的限制很可能不是2^31,但在内存不足时可能会受到影响。我不熟悉您收到的确切错误消息,但解决方法很简单。不要在400K观测值上训练随机森林模型。相反,采取一个合理大小的子集,比如说20K的观测值,然后对此进行训练。您最有可能使用精心选择的子集捕获400K集的行为。