Python 处理 Excel 表格:按列值拆分数据并整合到同一个 Sheet
使用 Python 的 pandas 和 openpyxl 库,可以轻松地将 Excel 表格数据按照指定列的值进行拆分,并将其整合到同一个 Excel 文件的同一个 Sheet 中。
以下代码示例演示了如何实现此功能,并保留表格名称和中文列名:
import pandas as pd
from openpyxl import load_workbook
# 加载 Excel 文件
filename = 'data.xlsx'
sheetname = 'Sheet1'
book = load_workbook(filename)
writer = pd.ExcelWriter(filename, engine='openpyxl') 
writer.book = book
# 读取 Excel 数据
df = pd.read_excel(filename, sheet_name=sheetname, header=[0,1])
# 按照某一列的值拆分数据
grouped = df.groupby('拆分列名称')
# 将拆分后的数据写入不同的表格
for name, group in grouped:
    group.to_excel(writer, sheet_name=name)
# 保存 Excel 文件
writer.save()
代码说明:
- 加载 Excel 文件:使用 
load_workbook加载 Excel 文件,并创建一个ExcelWriter对象,指定引擎为 'openpyxl' 以保留 Excel 文件的格式。 - 读取 Excel 数据:使用 
read_excel方法读取 Excel 文件,并指定header=[0,1]来读取第一行和第二行作为表格名称和中文列名。 - 按照列值拆分数据:使用 
groupby方法按照指定的列名称('拆分列名称')将数据进行分组。 - 写入不同的表格:使用 
to_excel方法将每个分组的数据写入不同的表格,并使用分组的名称作为表格名。 - 保存 Excel 文件:使用 
save方法保存修改后的 Excel 文件。 
注意:
- 代码中的 '拆分列名称' 需要替换为实际的列名称。
 - 确保 Excel 文件的第一行为表格名称,第二行为中文列名。
 
原文地址: https://www.cveoy.top/t/topic/nF09 著作权归作者所有。请勿转载和采集!