python数据分析_Python数据分析—数据排序

本文详细介绍了如何使用Python进行数据框的排序操作,包括sort_values函数的应用,如按年龄进行升序和降序排列,以及综合多个条件排序。同时提到了对列的排序,鼓励读者实践和探索更多可能性。
摘要由CSDN通过智能技术生成
在对海量数据进行分析的过程中,可能需要对数据进行排序操作。

本节教大家如何在python中对数据框进行一些排序操作。

本文目录
  1. 总结sort_values函数的用法

  2. 按年龄对行进行升序排列

  3. 按年龄对行进行降序排列

  4. 按年龄升序身高降序排列数据框

  5. 对列进行排序

注意:本文沿用数据分析第一课【Python数据分析—数据建立】里的数据框date_frame:

3c4b602eecb590a6139cd9b2f2ef62b1.png

 1   总结sort_values函数的用法

python中默认按行索引号进行排序,如果要自定义数据框的排序,可以用sort_values函数进行重定义排序。 下面对sort_values中几个常用的参数进行讲解,它的具体语法如下: sort_values(by=[列表],ascending=[True or False], axis=(1 or 0)) 其中by后面为要排序的列,可以是一列,也可以是多列。表示首先按第一列,再依次按后面的列进行排序。 ascending=True表示按升序排列,否则为降序排列,默认按升序排列。 axis=1表示对列排序,为0表示对行排序,默认对行排序。

 2   按年龄对行进行升序排列

若想按年龄升序排列数据框,可在python中输入如下语句:
date_frame.sort_values(by = ['age'])
得到结果如下:

a2d5054d734e09d413ff8ff201d5e2ff.png

其中by=['age']表示按年龄排序,默认是升序排列,所以不需要指定ascending的值。

 3   按年龄对行进行降序排列

若想按年龄降序排列数据框,可在python中输入如下语句:
date_frame.sort_values(by = ['age'], ascending = False)
得到结果如下:

3eff9af5cbdd1128a319930a456ff19e.png

 4   按年龄升序身高降序排列数据框 若想按年龄升序身高降序排列数据框,可在python中输入如下语句:
date_frame.sort_values(by = ['age','height'], ascending = [True,False])
得到结果如下:

73dc41db8ba7bae379c0bbd3f69bef0d.png

ascending中的第一个True表示先对年龄进行升序排列,第二个False表示若年龄相同,再根据身高降序排列。  5   对列进行排序 对列排序,第一种办法是重定义列的顺序进行排序。 假设列的顺序按学号、姓名、年龄、身高、性别进行排序,可以在python中输入如下语句:
date_frame[['ID','name','age','height','gender']]
得到结果如下:

d586efda2f1bdf8d256c4aacb1dbf0fd.png

第二种办法是利用axis=1对列进行排序,不过这种排序需要某一行的值是同种类型的,可以比较。 假设我抽取原数据框中的age和height列,具体语句如下:
date_frame[['age','height']]
得到结果如下:

450bdc182fb6df7aa7e88adcdb268146.png

对这两列按第三行的数值进行排序,具体语句如下:
date_frame[['age','height']].sort_values(by = [3], axis=1)
得到结果如下:

0e17922ebea67d4780f7e4e0132940eb.png

由于ascending参数没有指明,默认为升序,所以排序后height列排在age列的前面。

至此,在python中对数据框进行排序操作已介绍完毕,大家可以动手练习一下,思考一下还可不可以对数据框进行别的操作f93acab55e804bbe9a43648a734885dc.png

往期回顾: 3D星空图 3D星空图V2版 520表白代码合集 用python绘制皮卡丘

娱乐圈排行榜动态条形图绘制

58a378aa194ffd14495ee1483316dcad.png

0b259c996f9b351c64fe6d87d6c6790e.png

扫一扫关注我

19967879837

投稿微信

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值