1

我一直在拆分数据帧并将它们写入 R 中的 txt 文件,但现在我发现它们需要写入 xlsx 文件。我安装了 xlsx 包并修改了我的循环,但它不再工作了。我得到“ [[.default(dots [[2L]],1L)错误:下标超出范围”。

这是循环:

trts<-vector("list", length=6)
trt<-as.character(c("CC", "CCW", "C2", "S2", "PF", "P"))

for(i in 1:6){
trts[[i]]<-co2[co2$trt == trt[i],]
  write.xlsx(trts[[i]], paste(trt[i], "CO2", "xlsx", sep="."))

这是数据(我的 df 是 co2):拆分 this

这是怎么回事?

4

1 回答 1

1

为什么不直接将其输出为 CSV?

#Read Data
co2 <- read.table("~/Observed COBS CO2.txt",
                                header=T, quote="\"")

#Output to CSV
apply(as.matrix(unique(co2$trt)),1,
      function(x){
        write.table(co2[co2$trt == x,],
                    paste(x, "co2",".csv",sep=""),
                    sep=",",row.names=F)}
      )
于 2013-07-22T15:57:18.417 回答