gpt4 book ai didi

Pandas 分组和排名 - 重复的排名相同

转载 作者:行者123 更新时间:2023-12-01 08:46:14 24 4
gpt4 key购买 nike

这是我的数据框:

my_df = pd.DataFrame({'group':['a','a', 'a','b','b'], 'date':['2017-01-02', '2017-01-02','2017-03-01',  '2018-02-05', '2018-04-06']})
my_df['date']= pd.to_datetime(my_df['date'], format = '%Y-%m-%d')

我想为每个组添加排名,其中相同的值将被分配相同的排名。

这是我想要的输出:
    date        group rank
0 2017-01-02 a 1
1 2017-01-02 a 1
2 2017-03-01 a 2
3 2018-02-05 b 1
4 2018-04-06 b 2

我想我可以通过分组两次并排名并加入原始数据框来做到这一点,但我想知道是否有更快的方法来做到这一点。

最佳答案

只是使用 rank与方法 dense

my_df.groupby(['group'])['date'].rank(method ='dense')
Out[6]:
0 1.0
1 1.0
2 2.0
3 1.0
4 2.0
Name: date, dtype: float64

关于 Pandas 分组和排名 - 重复的排名相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52743501/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com