📌  相关文章
📜  根据列值将 pd 数据框拆分为 excel 文件 - Python (1)

📅  最后修改于: 2023-12-03 15:10:49.099000             🧑  作者: Mango

根据列值将 pd 数据框拆分为 Excel 文件 - Python

在数据分析或数据处理中,我们通常需要将一个大的数据框拆分成多个小的数据框或 Excel 文件。下面介绍一种Python的实现方式,可以通过指定列值自动将 pd 数据框拆分为多个 Excel 文件。

主要模块
  • pandas:用于读取和处理数据框
  • openpyxl:用于操作 Excel 文件
import pandas as pd
from openpyxl import Workbook
示例数据

在示例中我们使用了一个包含国家/地区、数量和销售额的数据框。

data = {
    'Country': ['China', 'China', 'USA', 'USA', 'USA', 'Japan', 'Japan'],
    'Quantity': [3, 5, 2, 4, 1, 9, 2],
    'Sales': [1100, 1850, 950, 1620, 400, 3200, 780]
}
df = pd.DataFrame(data)
将数据框拆分为 Excel 文件

我们可以使用 Pandas 的 groupby 函数根据列值进行分组,并将每个分组转换为 Excel 文件。

# 将数据框按照 Country 分组
groups = df.groupby('Country')

# 遍历分组并写入 Excel 文件
for name, group in groups:
    # 新建 Excel 文件
    wb = Workbook()
    ws = wb.active
    
    # 写入数据
    rows = group.to_records(index=False)
    for row in rows:
        ws.append(row)
    
    # 保存 Excel 文件
    wb.save(f'{name}.xlsx')

以上代码可以将数据框拆分成三个 Excel 文件:China.xlsx、Japan.xlsx 和 USA.xlsx。每个文件中包含相应国家的数据。

总结

以上介绍了如何在 Python 中根据列值将 pd 数据框拆分为多个 Excel 文件。该方法适用于需要将大型数据框拆分为多个文件的场景,同时也为数据清洗、分析提供了更多的灵活性。