如何使用 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.
示例如下所示:
- 目录有 4
.xlsx
个文件
- 读取所有 4
.xlsx
个文件
- 将所有 4 个
.xlsx
个文件合并为一个文件
- 每个文件应该代表一个 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 文件都作为工作表。
.xlsx
个文件都在一个目录中。此目录中只有 .xlsx
个文件。我需要获取每个单独的 .xlsx
文件并将其插入单个 sheet.
示例如下所示:
- 目录有 4
.xlsx
个文件 - 读取所有 4
.xlsx
个文件 - 将所有 4 个
.xlsx
个文件合并为一个文件 - 每个文件应该代表一个 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 文件都作为工作表。