0

我有多个文件,我只想从中读取特定的表格

path <- paste0("", sheets$file[1:nrow(sheets)])

sheets$file列具有test1.xlsx行中文件的名称

sheet_names <- lapply(path, readxl::excel_sheets)

sheets$table有我想从创建的工作表名称中提取的工作表名称 - 我该怎么做?

这实现了目标,但方式复杂:

sheet <- sheet_names %>% 
  map_df(as_tibble)

rel_sheet <- as.list(sheet[sheet$value %in% sheets$table,])
4

1 回答 1

0

我没有要测试的示例,但是这样的事情是否足够简单?

library(purrr)

# simple function to read each sheet from a given workbook (into a list of data frames)
read_sheets <- function(single_path, sheets) map(sheets, ~readxl::read_excel(single_path, .x))

# loop over the list of files, reading in
map(path, read_sheets, sheets = sheets$table)

您的最终结果将是数据框列表的列表。从那里开始,一切都取决于您的数据是什么样的。

于 2021-01-29T21:52:24.260 回答