【发布时间】:2019-08-24 19:54:44
【问题描述】:
我正在尝试合并/绑定大量数据。该代码已编写并且工作正常。尝试在没有工作表的情况下合并数据时出现问题。有什么方法可以跳过错误吗?
library(tidyverse)
library(xlsx)
files <- list.files(pattern="*.xlsx")
read_Sheet_1 <- lapply(files, readxl::read_excel, sheet = "Sheet 1")
Sheet_1 = do.call(rbind, read_Sheet_1)
read_Sheet_2 <- lapply(files, readxl::read_excel, sheet = "Sheet 2")
Sheet_2 = do.call(rbind, read_Sheet_2)
read_Sheet_3 <- lapply(files, readxl::read_excel, sheet = "Sheet 3")
Sheet_3 = do.call(rbind, read_Sheet_3)
write.xlsx(as.data.frame(Sheet_1), file="Final.xlsx", sheetName="Sheet_1", row.names=FALSE)
write.xlsx(as.data.frame(Sheet_2), file="Final.xlsx", sheetName="Sheet_2", append=TRUE, row.names=FALSE)
write.xlsx(as.data.frame(Sheet_3), file="Final.xlsx", sheetName="Sheet_3", append=TRUE, row.names=FALSE)
预期结果:将每个工作表中的行合并到一个 Final.xlsx 文件中 实际结果:即使函数将行合并在一起。如果其中一个文件中只有 2 张纸,则会出现错误。示例:File3.xlsx 中只有“Sheet 1”和“Sheet 3”,而不是“Sheet 2”。所以这将对整个“Sheet_2”数据框抛出错误。
【问题讨论】:
标签: r excel automation