Pandas 获取列中出现次数最多的值

新手上路,请多包涵

我有这个数据框:

 0 name data
1 alex asd
2 helen sdd
3 alex dss
4 helen sdsd
5 john sdadd

所以我试图获得 最频繁的一个或多个值(在本例中为它的值) ,所以我要做的是:

 dataframe['name'].value_counts().idxmax()

但它只返回值: Alex 即使 Helen 也出现了两次。

原文由 aleale 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
2 个回答

通过使用 mode

 df.name.mode()
Out[712]:
0     alex
1    helen
dtype: object

原文由 BENY 发布,翻译遵循 CC BY-SA 3.0 许可协议

要获得 n 最频繁的值,只需子集 .value_counts() 并获取索引:

 # get top 10 most frequent names
n = 10
dataframe['name'].value_counts()[:n].index.tolist()

原文由 Jared Wilber 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏