Rstats,如何使用大量文件优化读取csv

Rstats,如何使用大量文件优化读取csv,r,R,我有一个文件夹的csv文件,我试图读取所有这些文件使用读_csv,它可以很好地与12个文件,但之后我得到了这个错误 r:无法分配大小为2.8MB的向量 这里是csv文件的链接,我手动下载文件并解压缩 库(tidyverse) 数据路径如@wimpel正确说明上述内容,请使用data.table。它以其对计算机资源的低消耗而闻名,同时也是最快的计算机之一 请参考GitHub中的示例: 您会立即注意到,对于正在读取的相同大小的输入文件,fread比使用r-base或tidyverse消耗的RAM少

我有一个文件夹的csv文件,我试图读取所有这些文件使用读_csv,它可以很好地与12个文件,但之后我得到了这个错误

r:无法分配大小为2.8MB的向量

这里是csv文件的链接,我手动下载文件并解压缩

库(tidyverse)

数据路径如@wimpel正确说明上述内容,请使用
data.table
。它以其对计算机资源的低消耗而闻名,同时也是最快的计算机之一

请参考GitHub中的示例:

您会立即注意到,对于正在读取的相同大小的输入文件,
fread
比使用
r-base
tidyverse
消耗的RAM少于1/10


如@wimpel正确说明上述内容,请使用
数据。表
。它以其对计算机资源的低消耗而闻名,同时也是最快的计算机之一

请参考GitHub中的示例:

您会立即注意到,对于正在读取的相同大小的输入文件,
fread
比使用
r-base
tidyverse
消耗的RAM少于1/10


“无法分配向量”表示您的机器内存不足。所有zip文件加起来似乎占用了15~20 GB。您可能没有足够的内存。我仍然建议使用
data.table::fread()
。也就是说,可能可以使用
fill=NA
或使用
select
-参数或类似的方法来解决不同数量标题上的错误。。。此外,使用
fread()
,您可以轻松地使用
fread()
cmd
-参数在将数据加载到R之前过滤数据(在linux上使用命令
grep
,或在windows上使用
findstr
)。不仅加快了进程,而且通过只加载所需的行(而不是加载后过滤掉它们),使进程(大大)提高了内存效率。感谢您的评论,fill=NA,并选择did help,fread在发现额外列“无法分配向量”时停止阅读表示您的计算机内存不足。所有zip文件加起来似乎占用15~20 GB。您可能没有足够的内存。我仍然建议使用
data.table::fread()
。也就是说,可能可以使用
fill=NA
或使用
select
-参数或类似的方法来解决不同数量标题上的错误。。。此外,使用
fread()
,您可以轻松地使用
fread()
cmd
-参数在将数据加载到R之前过滤数据(在linux上使用命令
grep
,或在windows上使用
findstr
)。不仅加快了进程,而且通过只加载所需的行(而不是在加载后将其过滤掉),使进程(更)高效。感谢您的评论,fill=NA,并选择did help,fread在发现额外列时停止阅读