【问题标题】:How to import multiple excel files with multiple sheet in r如何在r中导入具有多个工作表的多个excel文件
【发布时间】:2018-07-09 05:21:14
【问题描述】:

我有 60 个 Excel 文件。每个文件有 8 张。每个文件的工作表相同,但每个文件的列数不同。

我遇到了不同的帖子,它帮助我导入了一个带有多个工作表的 Excel。但我不想对 60 个文件重复此操作。有什么方法可以将所有 60 个文件和所有工作表一起导入?

我看到了这篇文章 https://it.unt.edu/sites/default/files/importmultipleexcel_l_jds_aug2013.pdf。 但是他们正在考虑相同的列并合并我不想要的所有内容。我只想导入。

编辑。
注释中的函数是这样的:

read_excel_allsheets <- function(filename) {
    sheets <- readxl::excel_sheets(filename)
    x <- lapply(sheets, function(X) readxl::read_excel(filename, sheet = X))
    names(x) <- sheets
    x
}


mysheets <- read_excel_allsheets("ALL_1_18_2018.xlsx")

【问题讨论】:

  • 欢迎来到 SO!你能分享你用来导入一张纸的代码吗?所有工作表都在一个目录中吗?有命名约定吗?
  • 是的,所有工作表都在同一个目录中.. 这是导入一张工作表的代码 read_excel_allsheets

标签: r import xlsx


【解决方案1】:

你可以像这样使用你的函数read_excel_allsheets:

read_excel_allsheets <- function(filename) { 
  sheets <- readxl::excel_sheets(filename) 
  x <- lapply(sheets, function(X) readxl::read_excel(filename, sheet = X)) 
  names(x) <- sheets 
  x 
} 
files <- list.files(path = "/directory/in/question/", 
                     pattern = "*.xlsx",
                     full.names = TRUE)
out <- lapply(files, read_excel_allsheets)
names(out) <- basename(files)

【讨论】:

    猜你喜欢
    • 2021-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    相关资源
    最近更新 更多