gpt4 book ai didi

r - 附加到大型 data.frame 并达到内存限制

转载 作者:行者123 更新时间:2023-12-04 04:38:29 32 4
gpt4 key购买 nike

我正在尝试将一个月的数据 (200k) 行附加到已经有 1600 万行的 data.frame 中,并且我的系统达到了 R 内存限制:

d = rbind(d, n)
Error: cannot allocate vector of size 60.8 Mb
In addition: Warning messages:
1: In rbind(deparse.level, ...) :
Reached total allocation of 8072Mb: see help(memory.size)
memory.sizememory.max分别报告 2187.88 和 8072,所以我想我正在使用我所有的 8GB 系统内存。使用 JD Long in this question 详述的对象内存报告功能,我得到以下报告:
            Type          Size     Rows Columns
d data.table 2,231,877,576 15941535 26
files character 912 13 NA
i numeric 48 1 NA
n data.frame 28,176,000 213116 26

是否有另一种方法可以附加到 data.frame 而不需要似乎正在发生并占用内存的明显对象重复?我很想避免附加到 csv 文件,因为我正在使用 .RData 保存的对象以更快地读取数据。

最佳答案

如果您正在使用 data.table您应该使用的对象 rbindlist避免制作不必要的副本 data.table .这应该工作...

d = rbindlist(d, n)

关于r - 附加到大型 data.frame 并达到内存限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19300381/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com