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