详解python pandas 分组统计的方法


Posted in Python onJuly 30, 2019

首先,看看本文所面向的应用场景:我们有一个数据集df,现在想统计数据中某一列每个元素的出现次数。这个在我们前面文章《如何画直方图》中已经介绍了方法,利用value_counts()就可以实现(具体回看文章)

但是,现在,我们考虑另外一个场景,我们假如要想统计其中两列元素出现次数呢?举个栗子:

详解python pandas 分组统计的方法

在df数据集中,如果我们想统计A、B两列的元素的出现情况,也就是说,得到如下表。

详解python pandas 分组统计的方法

从上面的最后一列可以看到,在A、B两列中,1 2 出现了2次,1 4 出现1次 ,1 6出现1次,2 3出现了2次, 2 4 出现1次, 3 1出现了1次

具体实现的代码:

import pandas as pd
df=pd.DataFrame([[1,2,2],[1,4,5],[1,2,4],[1,6,3],[2,3,1],[2,4,1],[2,3,5],[3,1,1]],columns=['A','B','C'])
gp=df.groupby(by=['A','B'])
gp.size()

所以,如果想统计更多列,只要在groupby()中的by参数添加就可以,例如统计3列。

gp=df.groupby(by=['A','B','C'])

由gp.size()得到的是可以mulitiindex Series。

下面,要转化成DataFrame的结构。

newdf=gp.size()
newdf.reset_index(name='times')

详解python pandas 分组统计的方法

其中name中参数就是我们可以为最后一列添加新的名字,例如这里的“times”

这个时候newdf已经是DataFrame的类型了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
介绍Python中的文档测试模块
Apr 28 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
Oct 18 Python
Linux 发邮件磁盘空间监控(python)
Apr 23 Python
python爬虫_自动获取seebug的poc实例
Aug 05 Python
django rest framework 数据的查找、过滤、排序的示例
Jun 25 Python
Django基础知识与基本应用入门教程
Jul 20 Python
wxpython布局的实现方法
Nov 01 Python
对Tensorflow中tensorboard日志的生成与显示详解
Feb 04 Python
浅谈keras保存模型中的save()和save_weights()区别
May 21 Python
python openCV实现摄像头获取人脸图片
Aug 20 Python
Python自动化xpath实现自动抢票抢货
Sep 19 Python
python爬取音频下载的示例代码
Oct 19 Python
python文档字符串(函数使用说明)使用详解
Jul 30 #Python
python3.6 tkinter实现屏保小程序
Jul 30 #Python
简单了解python变量的作用域
Jul 30 #Python
学习和使用python的13个理由
Jul 30 #Python
Win10系统下安装labelme及json文件批量转化方法
Jul 30 #Python
python利用tkinter实现屏保
Jul 30 #Python
django 微信网页授权登陆的实现
Jul 30 #Python
You might like
基于curl数据采集之正则处理函数get_matches的使用
2013/04/28 PHP
使用php验证复选框有效性的示例
2013/11/13 PHP
PHP源码分析之变量的存储过程分解
2014/07/03 PHP
PHP实现基于文本的摩斯电码生成器
2016/01/11 PHP
Thinkphp3.2.3分页使用实例解析
2016/07/28 PHP
PHP实现简易用户登录系统
2020/07/10 PHP
JavaScript获得选中文本内容的方法
2008/12/02 Javascript
在JavaScript中,为什么要尽可能使用局部变量?
2009/04/06 Javascript
JavaScript 基础知识 被自己遗忘的
2009/10/15 Javascript
基于jQuery实现的Ajax 验证用户名是否存在的实现代码
2011/04/06 Javascript
javascript函数声明和函数表达式区别分析
2014/12/02 Javascript
JS实现图片平面旋转的方法
2016/03/01 Javascript
JS获取字符串实际长度(包含汉字)的简单方法
2016/08/11 Javascript
NodeJS、NPM安装配置步骤(windows版本) 以及环境变量详解
2017/05/13 NodeJs
利用nginx + node在阿里云部署https的步骤详解
2017/12/19 Javascript
在vue中使用公共过滤器filter的方法
2018/06/26 Javascript
基于vue实现探探滑动组件功能
2020/05/29 Javascript
JS检测浏览器开发者工具是否打开的方法详解
2020/10/02 Javascript
python类和函数中使用静态变量的方法
2015/05/09 Python
requests和lxml实现爬虫的方法
2017/06/11 Python
python引入导入自定义模块和外部文件的实例
2017/07/24 Python
python实现代码统计程序
2019/09/19 Python
Python实现Wordcloud生成词云图的示例
2020/03/30 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
Django:使用filter的pk进行多值查询操作
2020/07/15 Python
使用CSS3的appearance属性改变任何元素的浏览器默认风格
2012/12/24 HTML / CSS
安全的后院和健身蹦床:JumpSport
2019/07/15 全球购物
美国基督教约会网站:ChristianCafe.com
2020/02/04 全球购物
英文自荐信
2013/12/19 职场文书
会计专业毕业生自荐信范文
2013/12/20 职场文书
应届毕业生自荐信例文
2014/02/26 职场文书
现实表现材料范文
2014/12/23 职场文书
亮剑观后感600字
2015/06/05 职场文书
幼儿园小班教师随笔
2015/08/14 职场文书
给校长的建议书范文
2015/09/14 职场文书
MySQL之高可用集群部署及故障切换实现
2021/04/22 MySQL