我正在尝试分段导入和导出一个 10GB 的 CSV 文件,其中包含大约 1000 万个观察值。最后我想要大约 10 个可管理的 RData 文件(data_1.RData
、data_2.Rdata
等),但我在制作skip
和nrows
动态时遇到了麻烦。我nrows
永远不会改变,因为我每个数据集需要近 100 万行,但我想我需要一些等式,skip=
以便每个循环增加以捕获接下来的 100 万行。此外,由于只有第一行将包含变量名,因此header=T
可能会搞砸任何事情。ii=1
以下是我正在使用的大部分代码:
for (ii in 1:10){
data <- read.csv("myfolder/file.csv",
row.names=NULL, header=T, sep=",", stringsAsFactors=F,
skip=0, nrows=1000000)
outName <- paste("data",ii,sep="_")
save(data,file=file.path(outPath,paste(outName,".RData",sep="")))
}