一般来说,批量读取的数据文件都需要具有相同的列结构(列名、列类型),否则无法批量操作。
重要事情再说两遍:
批量读取的数据文件都需要具有相同的列结构!!
批量读取的数据文件都需要具有相同的列结构!!
1. 批量读取多个Excel文件
1.1 导入的全部Excel 文件的完整路径,
- 可以任意嵌套:读取该路径下所有目录和子路径下的所有Excel,只需要把参数recurse设置为TRUE
files = fs::dir_ls("C:/Data/Excel_Location", recurse = TRUE, glob = "*.xlsx")
files
1.2 批量读取【默认仅读取第一个Sheet】,合并成一个数据文件
library(readxl)
library(purrr)
# 增加一列[source列]表明数据来自哪个文件
df = map_dfr(set_names(files), read_xlsx, .id = "source")
head(df)
如果需要批量读取多个Excel文件的第2个sheet,使用sheet参数&#x