【发布时间】:2019-02-15 21:45:40
【问题描述】:
我有数据框并创建了它的一个子集。我拆分数据框及其 子集由可变因素。我想将它保存在excel文件中。我想要 编写一个循环来创建多个excel文件数据框和子集文件是 以可变因子在工作表中。
我编写了一个代码,它只是保存了最后一种变量工作簿。 如何创建所有工作簿。
rm(list = ls())
mtcars
split_mtcars <- split(mtcars, mtcars$cyl)
split_mtcars_subset <- split(mtcars[,2:4], mtcars$cyl)
cyl_type <- names(split_mtcars)
for(i in length(cyl_type)){
wb <- createWorkbook()
addWorksheet(wb, "raw")
addWorksheet(wb, "subset")
writeData(wb, 1, split_mtcars[[i]])
writeData(wb, 2, split_mtcars_subset[[i]])
saveWorkbook(wb, file = paste0(cyl_type[i],".xlsx"), overwrite = TRUE)
}
提前致谢
【问题讨论】:
-
您没有对名称进行排序,而只是获得长度 nr。通过写'for(i in 1:length(cyl_type))'来制作一个序列
-
不需要第二次拆分。先使用
split_mtcars[[i]][,2:5]