【博客地址】:https://blog.csdn.net/sunyaowu315
【博客大纲地址】:https://blog.csdn.net/sunyaowu315/article/details/82905347
python:GroupBy:数据聚合与分组运算
目录:
文章目录
目录: @[toc]
一 GroupBy技术
1 对分组进行迭代
2 选取一个或一组列
3 通过字典或Series进行分组
4 通过函数进行分组
5 根据索引级别进行分组
二 数据聚合
1 面向列的多函数应用
2 以“无索引”形式返回聚合数据
三 分组级运算和转换
1 apply:一般性的“拆分-应用-合并”
2 分位数和桶分析
1)示例:用特定分组的值填充缺失值
2)示例:随机采样和排列
3)示例:分组加权平均数和相关系数
4)示例:面向分组的线性回归
四 透视表和交叉表
1 透视表
2 交叉表
五 END
对数据集进行分组并对各组应用一个函数(无论是聚合还是转换),这是数据分析工作中的重要环节。在将数据集准备好之后,通常的任务就是计算分组统计或生成透视表。pandas提供了一个灵活的groupby功能,它能够以一种自然的方式对数据集进行切片、切块、摘要等操作。
关系型数据库和SQL能够流行的原因之一就是能够方便地对数据进行连接、过滤、转换和聚合等。
python和pandas强大的能力,有助于执行更复杂的分组运算,如:
根据一个或多个键(可以是函数、数组或DataFrame列名)拆分pandas对象
计算分组摘要统计,如计数、平均值、标准差或用户自定义函数
对DataFrame的列应用各种各样的函数
应用组内转换或其他函数,如规格化、线性回归、排名或选取子集等
计算透视表或交叉表等
执行分位数分析以及其他分组分析
一 GroupBy技术
split-apply-combine(拆分-应用-合并),基本描述了groupby的整个过程。分组运算的第一个阶段,pandas对象中的数据会根据提供的键被拆分为多组,拆分操作是在对象的特定轴上执行的;然后将一个函数应用在各个分组并产生一个新值;最后,所有这些函数的执行结果会被合并到最终的结果对