pandas技巧之 DataFrame中的排序与汇总方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了pandas技巧之 DataFrame中的排序与汇总方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2922字,纯文字阅读大概需要5分钟。
内容图文
![pandas技巧之 DataFrame中的排序与汇总方法](/upload/InfoBanner/zyjiaocheng/424/68fa2e296200413a99482b9e07a4719b.jpg)
相关学习推荐:python教程
今天是pandas数据处理专题的第六篇文章,我们来聊聊DataFrame的排序与汇总运算。
在上一篇文章当中我们主要介绍了DataFrame当中的apply方法,如何在一个DataFrame对每一行或者是每一列进行广播运算,使得我们可以在很短的时间内处理整份数据。今天我们来聊聊如何对一个DataFrame根据我们的需要进行排序以及一些汇总运算的使用方法。
排序
排序是我们一个非常基本的需求,在pandas当中将这个需求进一步细分,细分成了根据索引排序以及根据值排序。我们先来看看Series当中的排序方法。
Series当中的排序方法有两个,一个是sort_index,顾名思义根据Series中的索引对这些值进行排序。另一个是sort_values,根据Series中的值来排序。这两个方法都会返回一个新的Series:
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010830554.jpg)
索引排序
对于DataFrame来说也是一样,同样有根据值排序以及根据索引排序这两个功能。但是由于DataFrame是一个二维的数据,所以在使用上会有些不同。最简单的差别是在于Series只有一列,我们明确的知道排序的对象,但是DataFrame不是,它当中的索引就分为两种,分别是行索引以及列索引。所以我们在排序的时候需要指定我们想要排序的轴,也就是axis。
默认的情况我们是根据行索引进行排序,如果我们要指定根据列索引进行排序,需要传入参数axis=1。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010830678.jpg)
我们还可以传入ascending这个参数,用来指定我们想要的排序顺序是正序还是倒序。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010830805.jpg)
值排序
DataFrame的值排序有所不同,我们不能对行进行排序,只能针对列。我们通过by参数传入我们希望排序参照的列,可以是一列也可以是多列。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010830878.jpg)
排名
有的时候我们希望得到元素的排名,我们会希望知道当前元素在整体当中排第几,pandas当中也提供了这个功能,它就是rank方法。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010830952.jpg)
我们可以发现我们随手输入的一串数字当中,包含两个7,7是Series当中最大的数字,但是它们的排名为什么是6.5呢?
其实很简单,因为7出现了两次,分别是第6位和第7位,这里对它所有出现的排名取了平均,所以是6.5。如果我们不希望它取平均,而是根据出现的先后顺序给出排名的话,我们可以用method参数指定我们希望的效果。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010831030.jpg)
method的合法参数并不止first这一种,还有一些其他稍微冷门一些的用法,我们一并列出。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010831094.jpg)
如果是DataFrame的话,默认是以行为单位,计算每一行中元素占整体的排名。我们也可以通过axis参数指定以列为单位计算:
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010831556.jpg)
汇总运算
最后我们来介绍一下DataFrame当中的汇总运算,汇总运算也就是聚合运算,比如我们最常见的sum方法,对一批数据进行聚合求和。DataFrame当中同样有类似的方法,我们一个一个来看。
首先是sum,我们可以使用sum来对DataFrame进行求和,如果不传任何参数,默认是对每一行进行求和。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010831624.jpg)
除了sum之外,另一个常用的就是mean,可以针对一行或者是一列求平均。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010831690.jpg)
由于DataFrame当中常常会有为NA的元素,所以我们可以通过skipna这个参数排除掉缺失值之后再计算平均值。
另一个我个人觉得很好用的方法是descirbe,可以返回DataFrame当中的整体信息。比如每一列的均值、样本数量、标准差、最小值、最大值等等。是一个常用的统计方法,可以用来了解DataFrame当中数据的分布情况。
![pandas技巧之 DataFrame中的排序与汇总方法 - 文章图片](/upload/getfiles/0001/2021/4/24/20210424010831961.jpg)
除了介绍的这些方法之外,DataFrame当中还有很多类似的汇总运算方法,比如idxmax,idxmin,var,std等等,大家感兴趣可以去查阅相关文档,但是根据我的经验一般用不到。
想了解更多编程学习,敬请关注php培训栏目!
以上就是pandas技巧之 DataFrame中的排序与汇总方法的详细内容。
本文系统来源:https://www.php.cn/python-tutorials-460121.html内容总结
以上是互联网集市为您收集整理的pandas技巧之 DataFrame中的排序与汇总方法全部内容,希望文章能够帮你解决pandas技巧之 DataFrame中的排序与汇总方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。