Pandas常用操作命令(五)——数据排序sort_values

大家好,我是 👉【Python当打之年(点击跳转)】

本期为大家带来 《 Pandas常用操作命令》第五篇 ,主要介绍在数据处理可视化过程中经常用到的一些指令,本系列在后期会不断进行补充更新,希望对你有所帮助,如有疑问或者需要改进的地方可以私信小编。


🏳️‍🌈 5. 排序

示例数据:

在这里插入图片描述

# 重命名列
df.columns = ['姓名','性别','语文','数学','英语','城市','省份']

5.1 拆分列,生成新的Dataframe

df1 = df['姓名'].str.split('-',expand=True)
df1.columns = ['学号','姓名']
df1['性别'] = df['性别']
df1['语文'] = df['语文']
df1['数学'] = df['数学']
df1['英语'] = df['英语']
df1['城市'] = df['城市']
df1['省份'] = df['省份']

df1.dropna(inplace = True)

在这里插入图片描述

5.2 重置索引

df_last = df1.reset_index(drop=True)

在这里插入图片描述

5.3 按照语文成绩升序排序,默认升序排列

df_last.sort_values('语文')

在这里插入图片描述

5.4 按照数学成绩降序排序

df_last.sort_values('数学', ascending=False)

在这里插入图片描述

5.5 先按语文成绩升序排列,再按数学成绩降序排列

df_last.sort_values(['语文','数学'], ascending=[True,False])

在这里插入图片描述

5.6 语文成绩80及以上

df_last[df_last['语文']>=80]

df_last.query('语文 > 80')

在这里插入图片描述

5.7 语文成绩80及以上以及数学成绩90分及以上

df_last[(df_last['语文']>=80) & (df_last['数学']>=90)]

在这里插入图片描述

5.8 语文成绩80及以上或数学成绩90分及以上

df_last[(df_last['语文']>=80) | (df_last['数学']>=90)]

在这里插入图片描述

5.9 输出成绩100的行和列号

row, col = np.where(df_last.values == 100)
print('%s\t%s'%(row,col))
[0 7]	 [4 5]

5.10 增加一列“省份-城市”

df_last['省份-城市'] = df_last['省份'] + '-' + df_last['城市']

在这里插入图片描述

5.11 增加一列总分

df_last['总分'] = df_last[['语文','数学','英语']].sum(axis = 1)

在这里插入图片描述

5.12 按照总分、语文、数学、英语成绩依次排序

df_last.sort_values(by =['总分','语文','数学','英语'],ascending=False)

在这里插入图片描述

5.13 新增一列表示学生语文成绩等级的列(优秀、良好、中等、不及格)

def get_letter_grade(score):
    if score>=90:
        return '优秀'
    elif score>=80:
        return '良好'
    elif score>=60:
        return '中等'
    else:
        return '不及格'
    
df_last['语文等级'] = df_last['语文'].apply(lambda score: get_letter_grade(score))

在这里插入图片描述

未完待续。。。


文章首发:微信公众号 Python当打之年,Python编程技巧推送,希望大家可以喜欢。

以上就是本期为大家整理的全部内容了,赶快练习起来吧,原创不易,喜欢的朋友可以点赞、收藏也可以分享注明出处)让更多人知道。

推荐阅读


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python当打之年

您的鼓励是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值