我正在处理一个大型数据集(41,000个观测数据和22个预测变量),并试图使用以下代码来拟合随机森林模型:
模型<- randomForest(as.factor(data$usvsa) )~、ntree=1000、importance=TRUE、+ proximity=TRUE、data=data)。
我遇到以下错误:
Error: cannot allocate vector of size 12.7 Gb
In addition: Warning messages:
1: In matrix(0, n, n) :
Reached total allocation of 6
我遇到了这样一种情况,Pg总是更喜欢对一个大约有7000万行的表进行顺序扫描。(索引扫描是该查询的理想选择,我已经通过设置enable_seq_scan=off来确认它,速度提高了200倍)
因此,为了帮助Pg更好地理解我的数据,我执行了以下操作
ALTER TABLE tablename ALTER COLUMN columnname SET STATISTICS 1000;
不幸的是,这需要来锁定整个表(锁太多)。
是否有避免锁定此语句的解决方案?
根据主键范围对此表进行数据共享,因此我希望Pg更好地理解我的Pk,以便它知道哪个用户获得了大量数据。如果我也增加PrimaryKey列