是否可以立即将来自多个文件的数据加载到ff数据框(ffdf)? 可以说我有
big_file_part1.csv
big_file_part2.csv
big_file_part3.csv
我知道我可以将每个csv文件加载到一个单独的ffdf对象,然后将ffdfrbind.fill加在一起。 但这似乎是一种低效的方式,加载两次。还有更直接的方式吗?
答案 0 :(得分:2)
这就是我的做法(注意我的源数据没有任何标题)。
第一步 - 确保所有文件都在同一个文件夹中。将工作目录设置为文件夹。
#load the ffbase library
library(ffbase)
#create a vector of the files that I want to load
temp = list.files(pattern="*.csv")
#create the first ffdf object for i = 1, this is necessary to establish the ff dataframe to append the rest
for (i in 1)
mydata <- read.csv.ffdf(file=temp[i], header=FALSE, VERBOSE=TRUE
, first.rows=100000, next.rows=100000, colClasses=NA)
#loop through the remaining objects
for (i in 2:length(temp))
mydata <- read.csv.ffdf(x = mydata, file=temp[i], header=FALSE, VERBOSE=TRUE
, first.rows=100000, next.rows=100000)