我正在尝试合并两个大型数据集,因为我需要为我的模型创建最终的列车集
head(app_labels)
app_id |label_id
1 7324884708820028416 251
和
event_id device_id gender age group phone_brand device_model numbrand nummodel app_id label_id
第一个数据集现在具有唯一的行,因为我已经处理过它以删除所有重复项
我希望我的最后一组具有以下列
TrainWithLabels=merge(x=TrainWithAppevents_rel4,y=app_labels,by="app_id",all.x = TRUE)
然而,当我尝试在R(R工作室会话)中使用以下内容进行合并时
**Error: cannot allocate vector of size 512.0 Mb**
我收到以下错误
> dim(TrainWithAppevents_rel4)
[1] 4787796 10
> dim(app_labels)
[1] 459943 2
如果我再次运行,则错误会有所不同,但仅限于矢量大小
我的数据集的大小如下:
> sessionInfo()
R version 3.4.1 (2017-06-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)
有关机器/ R i使用的更多信息:
@AutoConfigureAfter({DataSourceAutoConfiguration.class, ...})
public class FlywayAutoConfiguration {
...
我使用英特尔2.6GHz / 16GB RAM / 64位操作系统/基于Windows10 / x64的处理器
我尝试了以下内容:
- 通过删除重复项和不需要的列来减少数据集, 第一个数据集中的所有行现在都是唯一的
关闭笔记本电脑上的所有其他应用程序然后运行合并 - 仍然失败
- 执行gc()然后运行merge
我已经在SO上针对R进行了类似的问题,但是他们都没有提供一个向前推进的解决方案,也没有特定于64位计算机上的合并失败
任何人都可以帮助建议解决方案或解决方法继续前进。
请假设这是我可以执行代码的唯一机器,并且目前无法通过zepplin在AWS上运行此R脚本。