【发布时间】:2019-02-26 20:16:48
【问题描述】:
我有两个要合并的数据框。
df1 的维度为 20015 行和 7 个变量。
df2 的维度为 8534664 行和 29 个变量。
当我执行full_join(df1, df2, by = "KEY") 时,我得到了Error: cannot allocate vector of size 891.2 Mb,所以我设置了memory.limit(1000000),但我仍然得到同样的错误。我运行full_join(),同时在 Windows 任务管理器中查看我的 CPU 使用率图表,它呈指数级增长。我还在代码中使用了gc()。
我的问题是,是否有一个函数可以加入第一行 1,000,000 行。休息一下,然后加入下一个 1,000,000 行等,直到所有行都已加入。
有没有批量运行full_join()的功能?
【问题讨论】:
-
尝试使用 data.table 加入,这在内存使用方面非常简洁......请参阅此处如何执行:stackoverflow.com/questions/15170741/…