python - pandas排序
如果进行简单升降序使用以下功能一般就够用
import pandas as pd
# 数据
df = pd.DataFrame({'A':['a','c','b','d','a'],'B':[5,4,3,2,1]})
# 按照B列值进行排序
# ascending为True代表升序,False为降序
# na_position为First代表空值放在最后,First为放在最前
# ignore_index为True代表忽略索引
# inplace为True代表替换原数据
df.sort_values(by=['B'], ascending=True, na_position='last', ignore_index=True, inplace=True)
# A列升序,B列降序
import pandas as pd
df = pd.DataFrame({'A':['a','c','b','d','a'],'B':[5,4,3,2,1]})
df.sort_values(by=['A','B'], ascending=[True, False], na_position='last', ignore_index=True, inplace=True)
如果需要进行复杂排序可以自定义规则
# 按照B列与3的差的绝对值降序
import pandas as pd
df = pd.DataFrame({'A':['a','c','b','d','a'],'B':[5,4,3,2,1]})
def cmp(x):
return abs(x-3)
df.sort_values(by=['B'], key=cmp, ascending=False, ignore_index=True, inplace=True)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了