Python 组合序号

python 复制代码
import pandas as pd  
  
# 创建一个示例数据框  
data = {  
    'group': ['A', 'A', 'A', 'B', 'B', 'C', 'C', 'C', 'C'],  
    'value': [3, 1, 2, 5, 4, 6, 9, 7, 8]  
}  
df = pd.DataFrame(data)  
  
# 先按group分组,再按value列升序排序  
df_sorted_asc = df.sort_values(by=['group', 'value'])  
  
# 使用groupby和cumcount为每组内按value升序分配一个序号  
df_sorted_asc['group_rank_asc'] = df_sorted_asc.groupby('group').cumcount() + 1  
  
print(df_sorted_asc)

# 先按group分组,再按value列降序排序  
df_sorted_desc = df.sort_values(by=['group', 'value'], ascending=[True, False])  
  
# 使用groupby和cumcount为每组内按value降序分配一个序号  
df_sorted_desc['group_rank_desc'] = df_sorted_desc.groupby('group').cumcount() + 1  
  
print(df_sorted_desc)
相关推荐
anqi2715 分钟前
如何在 IntelliJ IDEA 中编写 Speak 程序
java·大数据·开发语言·spark·intellij-idea
XuX0320 分钟前
MATLAB小试牛刀系列(1)
开发语言·matlab
大模型真好玩27 分钟前
初学者必看大模型微调指南:Unsloth官方微调技巧大公开!
人工智能·python
Suckerbin30 分钟前
第十四章-PHP与HTTP协议
开发语言·http·php
Best_Liu~35 分钟前
TransactionTemplate 与@Transactional 注解的使用
java·开发语言·spring boot·后端
谈不譚网安41 分钟前
初识Python
开发语言·python
慕雪华年1 小时前
【Python】使用uv管理python虚拟环境
开发语言·python·ai·uv·mcp
狗蛋儿l1 小时前
qt 3d航迹图
开发语言·qt·3d
跳跳糖炒酸奶2 小时前
第二章、Isaaclab强化学习包装器(1)
人工智能·python·算法·ubuntu·机器人
学习机器不会机器学习2 小时前
深入浅出JavaScript常见设计模式:从原理到实战(2)
开发语言·javascript·设计模式