【问题标题】:Loop to export multiple dataframes in r to Excel and Name Each Sheet循环以将 r 中的多个数据框导出到 Excel 并命名每个工作表
【发布时间】:2020-04-06 08:25:29
【问题描述】:

我有 2 个要导出到 Excel 的数据框,每个数据框位于不同的工作表上,并为每个工作表命名。

我已尝试使用 write.xlsx 进行以下操作。

这是我的 2 个数据框的列表,后面是我想在新 Excel 工作簿中给它们的标题:

list_of_datasets <- list(pivot.diagnosis, stat.pivot.quarter)
wk.title <- c("9-STD Durations", "10-STD Clinical Categories")

这是我尝试过的循环:

for (i in length(list_of_datasets)) {
  write.xlsx(list_of_datasets[i], file = "Trial.xlsx", 
           sheetName = wk.title[i], 
           append = TRUE)
}

问题:这只会将最后一个数据框(即stat.pivot.quarter)输出到Trial.xlsx电子表格。 Append = TRUE 在那里,所以我认为它会在循环的每次迭代中附加 ,但事实并非如此。 append = T 似乎不起作用

感谢任何潜在客户!

【问题讨论】:

  • 有几个可以写入excel的包,你用的是哪一个?
  • 另外,对于列表,您将需要使用write.xlsx(list_of_datasets[[i]], file = "Trial.xlsx"
  • this questionthis one 的潜在重复
  • 澄清一下,我的代码仅适用于 2 个数据帧,但我真的有兴趣为 许多 个数据帧执行此操作。当循环导出每个数据框时,对 自定义命名 每个工作表特别感兴趣。谢谢

标签: r excel loops export


【解决方案1】:

writexl 是一个轻量级的包,在这里可以很好地为您服务。

writexl::write_xlsx(
  list("sheetname1" = dataframe1, "sheetname2" = dataframe2),
  path = "path/to/save/to.xlsx"
)

【讨论】:

  • 这没有帮助。我已经在使用这个包了 - 请参阅上面的代码。我需要一个用于许多数据框的循环,并且能够循环并为每个迭代/数据框放置唯一的工作表名称。
猜你喜欢
  • 2020-03-09
  • 1970-01-01
  • 1970-01-01
  • 2021-01-31
  • 1970-01-01
  • 1970-01-01
  • 2010-11-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多