我如何在熊猫中进行分组和计数,然后按分组大小对整个数据框进行升序排序? 例如,我有以下数据框:
wdate cls
Found 116 groups
wdate cls
0 2020-06-09 84
1 2020-06-09 84
2 2020-06-09 108
3 2020-06-09 108
4 2020-06-08 76
5 2020-06-08 89
6 2020-06-08 93
7 2020-06-08 82
8 2020-06-08 84
9 2020-06-08 89
应该这样排序(组中最小的组数)
wdate cls
4 2020-06-08 76
7 2020-06-08 82
6 2020-06-08 93
5 2020-06-08 89
9 2020-06-08 89
2 2020-06-09 108
3 2020-06-09 108
0 2020-06-09 84
1 2020-06-09 84
8 2020-06-08 84
我不知道该怎么做。 谢谢
答案 0 :(得分:2)
我将用transform
做count
argsort
df=df.iloc[df.groupby(['cls'])['cls'].transform('count').argsort()]
Out[262]:
wdate cls
4 2020-06-08 76
6 2020-06-08 93
7 2020-06-08 82
2 2020-06-09 108
3 2020-06-09 108
5 2020-06-08 89
9 2020-06-08 89
0 2020-06-09 84
1 2020-06-09 84
8 2020-06-08 84