【发布时间】:2015-11-15 11:08:23
【问题描述】:
我被大量数据集困在 R 中,然后处理它(通过 randomForest)。基本上,我有一个大约 100K 行和 6K 列的 csv 文件。直接导入它需要很长时间,并会出现许多关于空间分配的警告(达到 8061mb 的限制)。在许多警告结束时,我确实在 R 中获得了该数据框,但不确定是否依赖它。即使我使用该数据框,我也很确定在其上运行 randomForest 肯定会是一个大问题。因此,我的问题分为两部分:
- 如何高效地导入如此大的 csv 文件而不会出现任何警告/错误?
- 导入 R 后,如何继续使用 randomForest 函数。
我们是否应该使用一些可以提高计算效率的包。欢迎任何帮助,谢谢。
【问题讨论】:
-
data.table::fread 或 readr::read_csv。这些读取大文件的速度要快得多(fread 具有优势)。指定要读取的行数也会有所帮助。
-
要导入大文件,请使用
data.table::fread。它比read.csv、ff和sqldf::read.csv.sql更快。 -
哇……太棒了,文件在 38 秒内用 fread 导入了……感谢 phiver 和 Narendra,为我的第一个问题关闭。
标签: r csv bigdata random-forest