使用 Python 合并 CSV 文件中相同日期、商品编码和销售类型的销量

本文将介绍如何使用 Python 的 pandas 库来处理 SUM.csv 文件,将销售日期相同、单品编码相同且销售类型相同的行的销量(千克)相加,并将结果输出到新的 CSV 文件 SUMsmall.csv 中。

SUM.csv 文件示例:

销售日期,扫码销售时间,单品编码,单品名称,分类名称,销量(千克),销售单价(元/千克),销售类型,是否打折销售,批发价格,单品损耗率
2023-03-01,10:00:00,A001,苹果,水果,5,10,零售,否,8,0.05
2023-03-01,11:00:00,A001,苹果,水果,3,10,零售,否,8,0.05
2023-03-01,12:00:00,A002,香蕉,水果,2,5,批发,是,4,0.03
2023-03-02,10:00:00,A001,苹果,水果,7,10,零售,否,8,0.05
2023-03-02,11:00:00,A002,香蕉,水果,4,5,批发,是,4,0.03

代码实现:

import pandas as pd

# 读取 SUM.csv 文件
df = pd.read_csv('SUM.csv')

# 对数据进行分组和求和操作
df_small = df.groupby(['销售日期', '单品编码', '销售类型']).sum().reset_index()

# 将处理后的数据保存到 SUMsmall.csv 文件
df_small.to_csv('SUMsmall.csv', index=False)

解释:

  1. 导入 pandas 库: 使用 import pandas as pd 导入 pandas 库。
  2. 读取 CSV 文件: 使用 pd.read_csv('SUM.csv') 读取 SUM.csv 文件并将其存储在 df 数据框中。
  3. 分组和求和: 使用 df.groupby(['销售日期', '单品编码', '销售类型']).sum().reset_index() 对数据进行分组和求和操作。
    • groupby 方法将数据根据 '销售日期'、'单品编码' 和 '销售类型' 进行分组。
    • sum() 方法对每个分组的 '销量(千克)' 列进行求和。
    • reset_index() 方法将分组索引重置为数值索引。
  4. 保存结果: 使用 df_small.to_csv('SUMsmall.csv', index=False) 将处理后的数据保存到 SUMsmall.csv 文件中。
    • to_csv() 方法将数据框保存为 CSV 文件。
    • index=False 参数表示不保存索引列。

SUMsmall.csv 文件示例:

销售日期,单品编码,销售类型,销量(千克)
2023-03-01,A001,零售,8
2023-03-01,A002,批发,2
2023-03-02,A001,零售,7
2023-03-02,A002,批发,4

这段代码将生成一个新的 CSV 文件 SUMsmall.csv,其中包含了销售日期、单品编码和销售类型相同行的销量(千克)之和。其它列的值将保持不变。

注意:

  • 确保 SUM.csv 文件存在于与代码相同的目录中。
  • 运行代码后,将在同一目录下生成 SUMsmall.csv 文件。
Python 处理 CSV 文件:合并相同日期、商品编码和销售类型的销量

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

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