如何在python中的数据框中找到最常见的两列组合

我在pandas数据框中的数据如下:

df = pd.DataFrame({'a':[1,2,3,3,4,4,4], 'b':[2,3,4,4,5,5,5]})

所以数据框看起来像这样:

   a  b
0  1  2
1  2  3
2  3  4
3  3  4
4  4  5
5  4  5
6  4  5

这里的列’a’,’b’组合是:12(1),23(1),34(2),45(3).
我试图选择4和5并打印出来,因为他们的组合
大多数事件(3次).

我的代码是:

counts = df.groupby(['a','b']).size().sort_values(ascending=False)
print(counts)

输出:

a  b
4  5    3
3  4    2
2  3    1
1  2    1
dtype: int64

但这只给我一个专栏[3,2,1,1].这是数字组合计数.
如何单独访问元素4和5以便打印出来?

提前致谢!

解决方法:

Pandas GroupBy对象由石斑鱼键索引.在多个键的情况下,这将意味着MultiIndex.您可以只提取结果的第一个索引,以给出表示最常见组合的元组:

counts.index[0]  # (4, 5)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐