如何使用 Pandas 读取多个 xlsx 文件并输出到多个工作表中的单个文件中?

How do I use Pandas for reading multiple xlsx files and outputting into one in individual file in multiple sheets?

.xlsx 个文件都在一个目录中。此目录中只有 .xlsx 个文件。我需要获取每个单独的 .xlsx 文件并将其插入单个 sheet.

示例如下所示:

  1. 目录有 4 .xlsx 个文件
  2. 读取所有 4 .xlsx 个文件
  3. 将所有 4 个 .xlsx 个文件合并为一个文件
  4. 每个文件应该代表一个 sheet。

最终结果应该是一个 Excel 文件,有 4 sheets.

这样做的过程是:

0。设置

安装所需的包:

pip install pandas
pip install xlsxwriter

然后将 pandas 导入到您正在使用的 Python 文件中:

import pandas as pd

1。读入 .xlsx 个文件

a。每个名字:

df1 = pd.read_excel('./excelfile1.xlsx')

等等

b。读取当前目录中的所有内容:

import os, re
dfs = []
for fname in os.listdir():
    if re.search(r'\.xlsx$', fname):
        dfs.append(pd.read_excel(fname))

2。创建一个新文件并将现有文件添加为工作表

writer = pd.ExcelWriter('./newfilename.xlsx', engine='xlsxwriter')
sheet_names = ['sheet1', ...]
for df, sheet_name in zip(dfs, sheet_names):
    df.to_excel(writer, sheet_name=sheet_name)
writer.save()

这将在当前目录中创建一个名为 newfilename.xlsx 的新 Excel 文件,其中每个现有的 Excel 文件都作为工作表。