使用Python统计CSV文件第4列中各元素的出现次数
Python统计CSV指定列的单词出现次数
方法一:基础csv模块+字典手动计数
适合需要自定义逻辑的场景,代码直观易懂:
import csv # 初始化计数字典 count_dict = {} # 打开CSV文件(替换为你的实际文件路径) with open('your_file.csv', 'r', encoding='utf-8') as f: reader = csv.reader(f) # 如果CSV有表头,取消下面注释跳过第一行 # next(reader) for row in reader: # 第4列索引为3(Python从0开始计数),去除首尾空格避免统计误差 word = row[3].strip() if word in count_dict: count_dict[word] += 1 else: count_dict[word] = 1 # 打印所有单词的出现次数 for word, count in count_dict.items(): print(f"{word}: {count}") # 单独查看HelloWorld的次数 print(f"HelloWorld出现次数: {count_dict.get('HelloWorld', 0)}")
方法二:用collections.Counter简化代码
Counter是标准库中专门用于计数的工具,代码更简洁:
import csv from collections import Counter with open('your_file.csv', 'r', encoding='utf-8') as f: reader = csv.reader(f) # 跳过表头(如果有) # next(reader) # 提取第4列所有单词并生成列表 word_list = [row[3].strip() for row in reader] count_result = Counter(word_list) # 打印完整统计结果 print(count_result) # 单独获取HelloWorld的次数 print(f"HelloWorld出现次数: {count_result.get('HelloWorld', 0)}")
注意事项
- 如果CSV用了非逗号分隔符(比如分号),在
csv.reader中添加delimiter=';'参数 - 若第4列存在空值,可在生成列表时过滤:
[row[3].strip() for row in reader if row[3].strip()] - 务必替换代码中的
your_file.csv为实际文件路径
内容的提问来源于stack exchange,提问作者CH4
相关产品推荐
相关产品推荐

