我想导入多个excel文件。每个文件包含3个与其他文件同名的选项卡。如。Studentname、studentdivision studentmarks .
我想导入所有文件并将它们绑定在唯一的选项卡中,并导出一个文件,其中包含这3个选项卡数据
需要帮助我试过了,但是行不通
有R read_excel或readxl Multiple Files with Multiple Sheets - Bind,但它只包含如何从多个文件中读取单个工作表并将结果合并到一个数据帧的信息。
这个答案是将该方法扩展到跨文件的多个不同表单的情况,从而导致多个数据框架。
首先最重要的是,将您的工作目录设置为存放文件的文件夹。
第二步骤:列出该文件夹
中的所有.xlsx
文件filenames <- list.files(pattern = "*.xlsx", full.names = TRUE)
3步骤:创建空列表
df <- list()
第四>step:运行for
循环到:
- 在所有文件中读取所有表号
i
(使用lapply()
) - 将所有表号
i
与rbind()
合并 - 将结果存储在先前创建的空列表(
df
)
注意:所有的列名称必须是相同的,在相同的表,否则rbind()
不能工作。并且所有文件的工作表顺序必须相似。
for (i in 1:3) {
df_list <- lapply(filenames, readxl::read_excel, sheet = i)
df[[i]] <- do.call(rbind, df_list)
}
现在每个表单有一个数据帧,所有的都存储在一个列表中。
您可以使用它,或者您可以将它们取消到您的环境中,如下所示: