我在 r 中有大约 30 个不同的数据框,我希望它们位于一张 Excel 表中,并带有数据框名称。
对于输出,我正在寻找这样的东西:
dfname1
col1 col2
x x
x x
dfname2
col1 col3
x x
作为一个迭代过程,我应该如何做到这一点?
最佳答案
将数据框名称与数据散布在同一个工作表中听起来是个坏主意,但这取决于您。
无论如何,请使用 openxlsx
.这是一种方法:
dfname1 <- data.frame(col1 = c("x", "x"), col2 = c("x", "x"), stringsAsFactors = FALSE)
dfname2 <- data.frame(col1 = c("x"), col3 = c("x"), stringsAsFactors = FALSE)
df_list <- list(dfname1=dfname1,
dfname2=dfname2)
library(openxlsx)
wb <- createWorkbook()
addWorksheet(wb, "Foo")
curr_row <- 1
for(i in seq_along(df_list)) {
writeData(wb, "Foo", names(df_list)[i], startCol = 1, startRow = curr_row)
writeData(wb, "Foo", df_list[[i]], startCol = 1, startRow = curr_row+1)
curr_row <- curr_row + nrow(df_list[[i]]) + 2
}
saveWorkbook(wb, "bar.xlsx")
这给了你(字面上)你要求的东西。
关于r - 使用 r 将多个数据框导出到一张 Excel 工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49434732/