潘达斯分组,并在组内按值排序[重复]。

问题描述 投票:0回答:1

在运行XGBoost并得到预测后,我需要根据组ID对排名进行排序。我已经尝试了几种方法,但不成功。

我的数据。

id     hotel_id   rank
1       5         2
1       3         3
1       4         1
2       23        4
2       12        2
2       62        3
2       22        1

这将是结果后 group_by 并根据 rank. 重要的是,id保持不变。

id     hotel_id   rank
1       4         1
1       5         2
1       3         3
2       22        1
2       12        2
2       62        3
2       23        4
python pandas pandas-groupby ranking
1个回答
1
投票

我相信这只是 sort_values:

df.sort_values(['id','rank'])

产出:

   id  hotel_id  rank
2   1         4     1
0   1         5     2
1   1         3     3
6   2        22     1
4   2        12     2
5   2        62     3
3   2        23     4
© www.soinside.com 2019 - 2024. All rights reserved.