使用Python合并CSV文件中相同日期和编码的销量数据

本文将介绍如何使用Python处理SUM.csv文件,将相同销售日期、单品编码和销售类型的销量(千克)数据进行合并,并将结果保存到SUMsmall.csv文件中。

以下Python代码示例演示了如何实现此目标:

import csv

# 打开SUM.csv文件和SUMsmall.csv文件
with open('SUM.csv', 'r') as csvfile, open('SUMsmall.csv', 'w', newline='') as outfile:
    reader = csv.DictReader(csvfile)
    writer = csv.DictWriter(outfile, fieldnames=reader.fieldnames)
    writer.writeheader()

    # 创建一个字典来存储每个销售日期和单品编码的销量总和
    sales_totals = {}

    # 遍历SUM.csv文件中的每一行
    for row in reader:
        # 获取当前行的销售日期、单品编码和销售类型
        date = row['销售日期']
        code = row['单品编码']
        sale_type = row['销售类型']
        # 获取当前行的销量(千克)
        quantity = float(row['销量(千克)'])

        # 构建一个唯一的键,包含销售日期、单品编码和销售类型
        key = (date, code, sale_type)

        # 如果键已存在,则将当前行的销量(千克)累加到已存在的值上
        if key in sales_totals:
            sales_totals[key] += quantity
        # 如果键不存在,则将当前行的值作为初始值
        else:
            sales_totals[key] = quantity

    # 将sales_totals中的数据写入SUMsmall.csv文件
    for key, quantity in sales_totals.items():
        date, code, sale_type = key
        writer.writerow({
            '销售日期': date,
            '单品编码': code,
            '销售类型': sale_type,
            '销量(千克)': quantity
        })

使用方法:

  1. 将以上代码保存为Python文件(例如,merge_csv.py)。
  2. 将SUM.csv文件放在与Python代码文件相同的目录中。
  3. 运行Python代码:python merge_csv.py

运行成功后,将会在相同目录下生成一个名为SUMsmall.csv的文件,其中包含了根据销售日期、单品编码和销售类型合并后的销量数据。

Python合并CSV文件相同日期和编码的销量数据

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

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