如何将大型csv(2.5GB)读入R?

时间:2014-06-21 14:01:04

标签: r csv import large-data

我已经在stackoverflow中阅读了很多关于将大文件读入R的帖子。 我的数据是2.5GB,行数约为30,000,000,行数约为15。 我尝试了来自其他帖子的sqldf方法,

library(sqldf)
f <- file("~/Downloads/data.csv")
system.time(bigdf <- sqldf("select * from f", dbname = tempfile(), file.format = list(header = T, row.names = F)))

返回错误,指示

"RS-DBI driver: (RS_sqlite_import: /Users/data.csv line 14691020 expected 13 columns of data but found 1)"

有没有人有其他好方法?

更新: 我刚刚尝试了ff包,但仍无效。

library(ff)
system.time(read.csv.ffdf(file="~/Downloads/data.csv", header=TRUE, sep=','))

它也返回了一个错误,

Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings,  : 
scan() expected 'an integer', got '"18749362"'

解决方案:

我试过ff,fread,sqldf,colClass,所有这些方法都行不通。因此,我在网上找到了一个文件分割应用程序,可以轻松解决我的问题。 谢谢大家回答我的问题!

此问题已关闭。

0 个答案:

没有答案