1.
files = fs::dir_ls("E:\\R\\Rscripts\\01practice", recurse = TRUE, glob = "*.xlsx")
files
#E:/R/Rscripts/01practice/六1班学生成绩.xlsx
#E:/R/Rscripts/01practice/六2班学生成绩.xlsx
#E:/R/Rscripts/01practice/六3班学生成绩.xlsx
library(readxl)
df = map_dfr(files, read_xlsx)
head(df)
# A tibble: 3 × 6
# 班级 姓名 性别 语文 数学 英语
# <chr> <chr> <chr> <dbl> <dbl> <dbl>
#1 六一班 何娜 女 83 89 92
#2 六二班 李娜 女 83 89 92
#3 六三班 王娜 女 83 89 92
df = map_dfr(set_names(files), read_xlsx, .id = "来源")
head(df)
# A tibble: 3 × 7
# 来源 班级 姓名 性别 语文 数学 英语
# <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl>
#1 E:/R/Rscripts/01practice/六1班学生成绩.xlsx 六一班 何娜 女 83 89 92
#2 E:/R/Rscripts/01practice/六2班学生成绩.xlsx 六二班 李娜 女 83 89 92
#3 E:/R/Rscripts/01practice/六3班学生成绩.xlsx 六三班 王娜 女 83 89 92
library(writexl)
write_xlsx(df, "output_file.xlsx")
输出结果如下图:
参考来源:
R语言编程,作者:张敬信