# 小项目实现CSV数据处理:按行统计数字出现次数


背景介绍

随着数据分析项目的逐步推进,我们常常需要对大量数据进行预处理。本项目的核心需求是:读取包含文本和数字的CSV文件,统计其中数字出现的次数,并将结果保存到另一个CSV文件中。这一过程涉及文件读取、数据处理以及结果输出等关键环节,要求我们掌握Python的读写操作、字典统计以及文件处理等核心能力。

思路分析

  1. 数据读取:使用Python的csv模块读取CSV文件,确保文件路径正确,数据读取过程稳定。
  2. 数字统计:将number列的数据转为整数并统计每个数字出现的次数,使用字典实现,避免遗漏或重复。
  3. 结果输出:将统计结果保存到另一个CSV文件中,确保数据格式与原始文件一致。

代码实现

# process_result.csv
# 读取原始文件data.csv
import csv

with open('data.csv', 'r', newline='', encoding='utf-8') as f:
    reader = csv.reader(f)
    columns = next(reader)

    # 初始化数字出现次数字典
    num_counts = {}

    # 遍历每一行,统计数字出现的次数
    for row in reader:
        num = int(row[1])
        num_counts[num] = num_counts.get(num, 0) + 1

# 写入处理后的数据
with open('process_result.csv', 'w', newline='', encoding='utf-8') as f:
    writer = csv.writer(f)
    writer.writerow(columns)
    for num, count in num_counts.items():
        writer.writerow([num, count])

总结

本项目展示了在Python中处理CSV文件的完整流程,涵盖数据读取、数字统计和结果输出的关键步骤。通过字典统计数字出现次数,有效避免了重复数据的问题,同时确保数据格式与原始文件一致。整个过程强调了Python在处理大规模数据时的高效性,同时也展示了基础的文件读写操作能力。