我试图(col 1)在熊猫中排名一列.如果有平局,我想查看另一列(col 2)只是为了那些记录并做一个打破平局.如果它们在该列中相同,我想只是随机分配排名,但每行必须具有唯一的排名.
例:
col1 | col 2 | Rank
20 | 3 | 3
22 | 2 | 2
22 | 2.5 | 1
3 | 1 | 4
3 | 1 | 5
Run Code Online (Sandbox Code Playgroud)
df['Rank'] = df.sort_values(by=['col1', 'col2'], ascending=False) \
.reset_index() \
.sort_values('index') \
.index + 1
Run Code Online (Sandbox Code Playgroud)
此代码执行以下步骤:
level_0.如果你有两个index和level_0,代码将抛出异常.| 归档时间: |
|
| 查看次数: |
176 次 |
| 最近记录: |