R中大csv文件,错误我想导入faily大文件(40Mrows X 4columns)。我结束了使用ffbase,尝试后sqldf导入在read.csv.ffdf
我试过base::read.csv
:它失败了。我试过sqldf::sqldf
:它失败了,说它无法再分配。
我只是试图复制在ffbase小插曲给出的例子。
R) x <- data.frame(log=rep(c(FALSE, TRUE), length.out=26), int=1:26, dbl=1:26 + 0.1, fac=factor(letters), ord=ordered(LETTERS), dct=Sys.time()+1:26, dat=seq(as.Date("1910/1/1"), length.out=26, by=1))
R) x <- x[c(13:1, 13:1),]
R) csvfile <- tempPathFile(path=getOption("fftempdir"), extension="csv")
R) write.csv(x, file=csvfile, row.names=FALSE)
R) y <- read.csv(file=csvfile, header=TRUE)
R) y
log int dbl fac ord dct dat
1 FALSE 13 13.1 m M 2012-11-26 11:21:29.15763 1910-01-13
2 TRUE 12 12.1 l L 2012-11-26 11:21:28.15763 1910-01-12
3 FALSE 11 11.1 k K 2012-11-26 11:21:27.15763 1910-01-11
4 TRUE 10 10.1 j J 2012-11-26 11:21:26.15763 1910-01-10
...
23 TRUE 4 4.1 d D 2012-11-26 11:21:20.15763 1910-01-04
24 FALSE 3 3.1 c C 2012-11-26 11:21:19.15763 1910-01-03
25 TRUE 2 2.1 b B 2012-11-26 11:21:18.15763 1910-01-02
26 FALSE 1 1.1 a A 2012-11-26 11:21:17.15763 1910-01-01
# ---- !!!!! HERE !!!! ---- #
R) ffx <- read.csv.ffdf(file=csvfile, header=TRUE)
Erreur dans ff(initdata = initdata, length = length, levels = levels, ordered = ordered, : vmode 'character' not implemented
我不明白...
你有什么见解?
人们可以用sqldf读取更大的文件。谨慎地展示你做了什么?你有没有试过导入你的数据的一个子集(比如几百行)? –
sqldf包中的'read.csv.sql()'默认为内存不足的数据库。 'sqldf()'默认为一个内存数据库,但是你可以通过指定'dbname = tempfile()'来指定一个内存不足的数据库。 –