如何根据其他列(即其组)中的唯一值对列中的值进行排序

时间:2019-05-09 19:44:59

标签: python pandas dataframe

在我的DataFrame中,我想按降序对每个group_id排序X。

           X         group_id    y
0        2.660535        1     3180
1       -1.076041        1     5543
2        9.331677        1    14142
3        5.989031        1    22393
4        1.548646        1    24194
5        2.687961        1    28181
6       -3.105952        1    34263

...           ...      ...      ...

2 个答案:

答案 0 :(得分:1)

这应该可以解决问题

df.sort_values(['group_id', 'X'], ascending=[True, False])

答案 1 :(得分:0)

This可能会帮助您。

您可以尝试类似df.sort_values('group_id', ascending=False, inplace=True)

或…

asc = df.sort_values('group_id', ascending=True, inplace=False)

desc = df.sort_values('X', ascending=False, inplace=False)