pandas新版本如何实现数据表多列频率统计

发布时间:2021-11-30 10:36:43 作者:小新
来源:亿速云 阅读:471

小编给大家分享一下pandas新版本如何实现数据表多列频率统计,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!



列频率统计

pandas 以前的版本(1.1以前)中,就已经存在单列的频率统计。

我们以泰坦尼克号罹难乘客数据为例子:

pandas新版本如何实现数据表多列频率统计  
image-20200806092628285

希望快速查看各个性别的记录数:

pandas新版本如何实现数据表多列频率统计  
image-20200806092732878

上面显示的是绝对数值,可以显示占比吗?

pandas新版本如何实现数据表多列频率统计  
image-20200806092901143

但是,以上都是针对单列的统计,很多时候我们希望对多列组合的频率统计。


 

数据表的多列频率统计

现在,pandas 1.1 版本中已为 DataFrame 追加了同名方法 value_counts,下面来看看怎么使用。

查看性别与是否生还的统计数:

pandas新版本如何实现数据表多列频率统计  
image-20200806093401214

同样地,通过参数可以微调输出结果:

pandas新版本如何实现数据表多列频率统计  
image-20200806093527710

可能对于一些初学者来说会疑惑,难道旧版本得到这个结果很麻烦吗?

其实以前的版本做到一样的效果也是非常容易:

pandas新版本如何实现数据表多列频率统计  
image-20200806094104421

没有按频率倒序输出?

简单在后面"接上"排序操作,结果就一样了:

pandas新版本如何实现数据表多列频率统计  
image-20200806094230946

其实还有另一种解决思路,有兴趣看源码吧

统计比例也没有多大的事情:

pandas新版本如何实现数据表多列频率统计  
image-20200806094306039

那肯定用新版本的方法呀,新方法一句就做了你这么多句的事情!

但是!!!

下面,我们就来看看"自己做主"的优势


 

分段统计

之前在讲解单列的频率统计(Series.value_counts)时,其实遗漏了一个挺有用的参数,对于数值型的列才能使用。

希望查看年龄段的频率(分3段吧):

pandas新版本如何实现数据表多列频率统计  
image-20200806095018867

通常我们希望按分段排序:

pandas新版本如何实现数据表多列频率统计  
image-20200806095136997

你是不是觉得新版本的 DataFrame.value_counts  也有这个参数呢?

很遗憾,并没有这个参数,应该考虑到组合列的值是不能分段的。

不过对于自定义函数,当然想干啥就干啥:

pandas新版本如何实现数据表多列频率统计  
image-20200806100144613


看完了这篇文章,相信你对“pandas新版本如何实现数据表多列频率统计”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

推荐阅读:
  1. pandas如何实现分区间,算频率
  2. python怎么实现统计文本中单词出现的频率

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

pandas

上一篇:DB2_PureScale备份与恢复是怎样的

下一篇:C/C++ Qt TreeWidget单层树形组件怎么应用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》