python - 打印python中出现次数最多的数据的名称和计数
问题描述
我需要在 csv 文件的列中打印出现次数最多的赛道名称。
我试过这个:
popular_course = (race_data.groupby(race_data.Race_Course.tolist(),as_index=False).size())
print(popular_course)
我的输出是:
Aintree 3
Ayr 6
Fairyhouse 3
Punchestown 3
Sandown 3
dtype: int64
当我将打印功能更改为:
print(popular_course.max())
我明白了:
6
我还需要 print 函数来打印 Race Course 的名称,所以它看起来像这样:
Ayr 6
如何让它包含赛马场的名称?
解决方案
有很多方法可以解决这个问题。关键是热门课程是一个系列,因此您正在寻找最大值以及该最大值的相应索引。
使用您现有的方法:
race_courses_sized = race_data.groupby('Race_Course').size()
print(race_courses_sized[race_courses_sized == race_courses_sized.max()])
另一个版本
pd.DataFrame(race_data['Race_Course'].value_counts()).head(1)
推荐阅读
- asp.net - 在没有 Internet 连接的 Web 服务器上启用 Azure AD SSO
- runtime-error - 在 Applescript 中处理 InDesign 文档时出错
- audio - 如何使用 ffmpeg 中的 libavcodec 将 opus 文件解码为 pcm 文件?
- python - 硒等到颜色变化
- mysql - 来自2个表的Mysql连接结果
- microservices - 使用 Azure Servicebus 和 Masstransit 将主题上发布的消息转发到队列
- python - 根据另一个熊猫数据框的值填充一个熊猫数据框的最快方法是什么?
- swift - 导航栏背景颜色未在 Xcode 中显示
- javascript - HTML文本输入值在后端JavaScript中没有改变
- mapbox - Mapbox Android SDK 大小