如何统计Pandas分组后多个列表中各球队名称的出现次数?
统计各球队在赛季列表中的出现次数
你可以通过以下两种方式快速统计各球队在赛季列表中的出现次数:
方法一:使用Pandas内置方法(推荐)
利用explode将每个赛季的球队列表拆分为单独行,再用value_counts统计次数:
# 拆分赛季列表为单独的球队行 expanded_clubs = clubslist.explode() # 统计各球队出现的赛季数 club_counts = expanded_clubs.value_counts() # 按示例格式输出结果 for club, count in club_counts.items(): print(f"{club}: {count}")
方法二:使用Python标准库collections.Counter
如果习惯用原生Python处理,可以合并所有球队列表后用Counter统计:
from collections import Counter # 合并所有赛季的球队列表 all_clubs = [] for season_clubs in clubslist: all_clubs.extend(season_clubs) # 统计各球队出现次数 club_counts = Counter(all_clubs) # 按示例格式输出 for club, count in club_counts.items(): print(f"{club}: {count}")
两种方法都能得到你需要的结果,explode的方式更贴合Pandas的数据流操作,代码更简洁;Counter则是通用的Python统计方案,适合熟悉原生库的场景。
内容的提问来源于stack exchange,提问作者Suj
相关产品推荐
相关产品推荐

