[英]sorting based on groups in pandas series
我想按值的降序(每组)订购系列(多级)。 例如,以下两个级别的系列(id,company)。
id company
86246 10000 841.90
10930090 28.44
10948797 52.69
126082871 1076172070 9.99
1076211171 4.99
1076317676 7.99
1078616272 5.00
有没有一种方法可以对每个组进行排序(降序),以便获得如下信息?
id company
86246 10000 841.90
10948797 52.69
10930090 28.44
126082871 1076172070 9.99
1076317676 7.99
1078616272 5.00
1076211171 4.99
非常感激
我不确定您的多级索引DataFrame是如何生成的,但是假设您拥有一个扁平的DataFrame df
>>> df
id company value
0 86246 10000 841.90
1 86246 10930090 28.44
2 86246 10948797 52.69
3 126082871 1076172070 9.99
4 126082871 1076211171 4.99
5 126082871 1076317676 7.99
6 126082871 1078616272 5.00
您只需按列value
排序并使用set_index()
创建一个多级索引:
>>> df.sort_index(by='value', ascending=False).set_index(['id', 'company'])
value
id company
86246 10000 841.90
10948797 52.69
10930090 28.44
126082871 1076172070 9.99
1076317676 7.99
1078616272 5.00
1076211171 4.99
我认为s.order(ascending=False)
可能s.order(ascending=False)
,其中s是保存系列的变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.