使用 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()

代码说明:

  1. 加载 Excel 文件:使用 load_workbook 加载 Excel 文件,并创建一个 ExcelWriter 对象,指定引擎为 'openpyxl' 以保留 Excel 文件的格式。
  2. 读取 Excel 数据:使用 read_excel 方法读取 Excel 文件,并指定 header=[0,1] 来读取第一行和第二行作为表格名称和中文列名。
  3. 按照列值拆分数据:使用 groupby 方法按照指定的列名称('拆分列名称')将数据进行分组。
  4. 写入不同的表格:使用 to_excel 方法将每个分组的数据写入不同的表格,并使用分组的名称作为表格名。
  5. 保存 Excel 文件:使用 save 方法保存修改后的 Excel 文件。

注意:

  • 代码中的 '拆分列名称' 需要替换为实际的列名称。
  • 确保 Excel 文件的第一行为表格名称,第二行为中文列名。
Python 处理 Excel 表格:按列值拆分数据并整合到同一个 Sheet

原文地址: https://www.cveoy.top/t/topic/nF09 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录