【发布时间】:2019-08-09 13:55:47
【问题描述】:
在 R 中,我尝试使用 openxlsx 将一系列数据帧打印到 Excel 文件中。特别是在这种情况下,我使用 list.files、read.xlsx 和 write.xlsx。
我仍然无法将多个选项卡写入一个 Excel 文件。
请参阅下面的代码,我尝试使用 for 循环以及手动解决方案来测试可行性,但没有成功
这是我的代码目前的样子。对于文件列表的长度,将每个文件通过管道传输到读取函数中,然后写入结果。
lapply(
1:length(file.list),
function(x) {
write.xlsx(
read.xlsx(file.list[i]),
file = file_name,
sheetName = file.list[i],
col.names = TRUE,
row.names = FALSE,
append = TRUE)
}
)
下面的手动解决方案对我来说似乎也没有任何运气
df1 <- read.xlsx(file.list[1])
write.xlsx(df1, file = file_name, sheetName = file.list[1], col.names = TRUE, row.names = FALSE, append = FALSE)
df2 <- read.xlsx(file.list[2])
write.xlsx(df2, file = file_name, sheetName = file.list[2], col.names = TRUE, row.names = FALSE, append = TRUE)
到目前为止没有错误消息。最终文件确实看到数据被写入其中,但是,似乎只有最后一个文件打印了结果。我认为这几乎是一个覆盖循环,
【问题讨论】:
-
我不太了解您的问题,但是您可以手动创建一个 wb 并添加不同的工作表(如果这是您所说的制表符)。如果您想要在一张纸上附加几条信息,也可以
-
嗨 Aaron,我实际上是在尝试加载多个文件,然后在工作簿中为每个单独的文件添加不同的工作表