gpt4 book ai didi

r - fread 内存使用量远大于文件

转载 作者:行者123 更新时间:2023-12-01 02:02:57 26 4
gpt4 key购买 nike

我在 512GB 内存服务器上。我有一个 84gig CSV(很大,我知道)。我只阅读了 79 列的 31 列,其中排除的都是浮点数/小数。

在比较了许多方法之后,似乎执行我想要的最高性能方法是 fread 文件。文件大小为 84gb,但查看“top”进程使用 160 gigs 的内存 (RES),即使最终 data.table 的大小约为 20gigs。

我知道 fread 预分配内存,这就是为什么它如此之快。只是想知道 - 这是否正常,有没有办法抑制内存消耗?

编辑:看起来,如果我只是让 fread 读取 10000 行(300MM),fread 仍然会预分配 84 演出内存。

最佳答案

R FAQ 7.42 .如果您想最小化您在服务器上使用的资源,请使用 fread 读取 csv。一次,然后使用 save 保存结果对象或 saveRDS .然后在需要数据时读取该二进制文件。

或者您可以使用命令行工具,如 cut , awk , sed等以仅选择所需的列并将输出写入另一个文件。那么你可以使用fread在那个较小的文件上。

关于r - fread 内存使用量远大于文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34709324/

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