You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写Python函数返回CSV第四列出现次数最多的值且以集合返回

问题解决代码及说明

原代码错误点

  • 变量名使用了Python内置关键字list,会覆盖原生列表功能,属于命名不规范
  • 没有实现CSV行的切割逻辑,无法提取第四列的数值
  • 缺失频率统计步骤,直接调用max的逻辑完全不符合需求
  • 判断相等误用了赋值符号=,属于基础语法错误
  • 没有处理返回值为set类型的要求

修正后的实现代码

from collections import Counter

def popvote(csv_lines):
    # 提取所有行的第四列(索引为3,从0开始计数)
    col4_list = [line.split(',')[3] for line in csv_lines]
    # 统计每个值的出现频率
    count_res = Counter(col4_list)
    # 找出最高出现频率
    max_count = max(count_res.values())
    # 筛选所有频率等于最高值的元素(可处理并列最高的情况)
    max_items = {item for item, count in count_res.items() if count == max_count}
    return max_items

测试验证

用你提供的CSV示例测试:

# 示例CSV行列表
test_csv = [
    "1,8dac2b,ewmzr,jewelry,phone0,9759243157894736,us,69.166.231.58,vasstdc27m7nks3",
    "2,668d39,aeqok,furniture,phone1,9759243157894736,jp,50.201.125.84,jmqlhflrzwuay9c",
    "3,622r49,arqek,vehicle,phone2,9759544365415694736,az,53.001.135.54,weqlhrerreuert6f",
    "4,6444t43,rrdwk,vehicle,phone9,9759543263245434353,au,54.241.234.64,weqqyqtqwrtert6f"
]
print(popvote(test_csv))
# 输出:{'vehicle'},符合需求

内容的提问来源于stack exchange,提问作者jordan parker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 20:36:00