首页 > 解决方案 > 如何在R中导入具有相同模式的excel表?

问题描述

假设我们有 3 个 Excel 工作表,分别是 sheet1_test、sheet2_test 和 sheet3_test。这些工作表的共同模式可以是 test 或 _test。那么,在这种情况下我们如何导入它们呢?我不知道它是否会起作用,但如果有多个文件,我会使用以下代码。

file_list <- list.files(pattern = "*.xls|*.xlsx")
df_list <- lapply(file_list, read_excel)
masterdf <- ldply(df_list, data.frame)

标签: r

解决方案


您可以使用excel_sheets获取工作表的名称并仅保留其中包含的工作表并使用或"test"导入它。lapplymap_df

library(readxl)

file_name <- '/path/to/file/filename.xlsx'
sheets <- excel_sheets(file_name)
correct_sheets <- grep('_test', sheets, value = TRUE)
data <- do.call(rbind, lapply(correct_sheets, read_excel, path = file_name))
#Can also use `purrr::map_df`
#data <- purrr::map_df(correct_sheets, read_excel, path = file_name)

推荐阅读