我必须在一个循环中生成多个数据帧。如何生成包含R中所有数据帧的单个输出excel/CSV文件?
发布于 2020-07-06 18:18:06
您可以将所有数据帧放在一个列表中,并使用openxlsx
包:
library(openxlsx)
openxlsx::write.xlsx(list_of_dataframes, "File Name.xlsx", row.names = FALSE)
这将写出一个Excel文件,每个列表对象都有一个选项卡。
使用iris
和mtcars
的示例
data(mtcars)
data(iris)
list_of_dataframes <- list(mtcars, iris)
openxlsx::write.xlsx(list_of_dataframes, "File Name.xlsx", row.names = FALSE)
发布于 2020-07-06 18:22:13
如果您想继续使用循环,可以执行以下操作:
final <- data.frame()
for (i in 1:n){
# computations to generate data frame
df <- ...
# bind the data frame to the final result
final <- rbind(final, df)
}
这将把您在循环中生成的所有数据帧合并为一个较大的数据帧,称为final
。现在将final
另存为.csv:
readr::write_csv(final, path = "output.csv")
https://stackoverflow.com/questions/62761993
复制相似问题