How to fix "Error: cannot allocate vector of size 265.6 Mb"

How to fix "Error: cannot allocate vector of size 265.6 Mb"

我有一个非常大的数据框列表(300 个数据框,每个有 2 列和 300~600 行),我想将它们全部加入

final <- subset %>% reduce(full_join, by = "Frame_times")

然而,当我尝试这样做时,出现以下错误:

Error: cannot allocate vector of size 265.6 Mb"

我在 64 位 Windows 10 上运行最新安装的 64 位 R (4.0.0)。 我有 8gb 内存,

> memory.limit()
[1] 7974
> memory.size(max = TRUE)
[1] 7939.94

我也试过 gc() 函数,但没有用。

看来我有足够的 space 和内存来 运行 这个,为什么我会收到这个错误? 我该如何解决?

非常感谢!

您 运行RAM 不足。故障排除的第一步可能是首先 运行 此代码在较小的数据帧子集(例如 3)上。结果(尤其是行数)是否符合您的预期?如果是,并且确实在做正确的事情,那么分批进行可能会有所帮助(比如 5 批,每批 100 个)。听起来最有可能的情况是,由于某种原因,行数或列数激增到比您预期的大得多。

错误中提到的266Mb只是最后一根稻草;不是您正在使用的总内存。