我有一个数据框 df 如下:
userId pageId tag
0 3122471 e852 18
1 3122471 f3e2 18
2 3122471 7e93 18
3 3122471 2768 6
4 3122471 53d9 6
5 3122471 06d7 15
6 3122471 e31c 15
7 3122471 c6f3 2
8 1234123 fjwe 1
9 1234123 eiae 4
10 1234123 ieha 4
使用 df.groupby(['userId', 'tag'])['pageId'].count()
按 userId 和 tag 对数据进行分组后。我会得到:
userId tag
3122471 2 1
6 2
15 2
18 3
1234123 1 1
4 2
现在我想找到每个用户拥有最多的标签。如下:
userId tag
3122471 18
1234123 4
(注意:如果有多个标签具有相同的计数,我想使用一个函数 my_rule
来确定显示哪个)
原文由 weigod 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以处理聚合数据。