我最近遇到了一个问题,即输出一个大的 data.table 来分隔每 x 行的文本文件。第三方应用程序不接受我的大文件,我注意到它接受了大约 20%,所以我决定拆分文件并通过 6 个单独的文件导入。
我通过以下方式解决了它,因为我无法在 stackoverflow 和 write.table 的文档中找到更好的方法;然而,对于潜在的未来应用,我想知道有什么比这更有效的方法。
dat <- data.frame(a=c(rep("a",10000)),b=c(rep("b",10000))
SetSize <- dim(dat)[1]/6
Set1 <- 1:SetSize
Set2 <- SetSize:(SetSize*2)
Set3 <- (SetSize*2):(SetSize*3)
Set4 <- (SetSize*3):(SetSize*4)
Set5 <- (SetSize*4):(SetSize*5)
Set6 <- (SetSize*5):dim(E.US)[1]
write.table(dat[Set1],"Input1.csv")
write.table(dat[Set2],"Input2.csv")
write.table(dat[Set3],"Input3.csv")
write.table(dat[Set4],"Input4.csv")
write.table(dat[Set5],"Input5.csv")
write.table(dat[Set6],"Input6.csv")