12月组队学习——第四章分组

第四章分组

学习时间:

12月22日-12月24日

学习内容:

一、分组模式及其对象

1. 分组的一般模式

想要实现分组操作,必须明确三个要素:

  • 分组依据 、
  • 数据来源 、
  • 操作及其返回结果 。

df.groupby(分组依据)[数据来源].使用操作

按照性别统计身高中位数,就可以如下写出

在这里插入图片描述

2. 分组依据的本质

根据多个维度进行分组,只需在 groupby 中传入相应列名构成的列表即可

在这里插入图片描述
根据学生体重是否超过总体均值来分组,同样还是计算身高的均值

在这里插入图片描述

其实最后产生的结果就是按照条件列表中元素的值(此处是 True 和 False )来分组

在这里插入图片描述
在这里插入图片描述

如果传入多个序列进入 groupby ,那么最后分组的依据就是这两个序列对应行的唯一组合

3. Groupby对象

具体做分组操作时,所调用的方法都来自于 pandas 中的 groupby 对象

  • 通过 ngroups 属性,可以得到分组个数
  • 通过 groups 属性,可以返回从 组名 映射到 组索引列表 的字典
  • size 作为 groupby 对象属性,表示统计每个组的元素个数
  • 通过 get_group 方法可以直接获取所在组对应的行,此时必须知道组的具体名字
    在这里插入图片描述
    在这里插入图片描述

4. 分组的三大操作

分组的三大操作:聚合、变换和过滤

二、聚合函数

1. 内置聚合函数

直接定义在groupby对象的聚合函数

max/min/
mean/median/
count/
all/
any/
idxmax/idxmin/
mad/
nunique/
skew/
quantile/
sum/
std/
var/
sem/
size/
prod

缺点如下:

  • 无法同时使用多个函数
  • 无法对特定的列使用特定的聚合函数
  • 无法使用自定义的聚合函数
  • 无法直接对结果的列名在聚合前进行自定义命名

2. agg方法

通过 agg 函数解决这四类问题

【a】使用多个函数

用列表的形式把内置聚合函数对应的字符串传入

在这里插入图片描述

【b】对特定的列使用特定的聚合函数

可以通过构造字典传入 agg 中实现,其中字典以列名为键,以聚合字符串或字符串列表为值。

在这里插入图片描述

【c】使用自定义函数

在这里插入图片描述

注意:
意传入函数的参数是之前数据源中的列,逐列进行计算

【d】聚合结果重命名

将上述函数的位置改写成元组,元组的第一个元素为新的名字,第二个位置为原来的函数

在这里插入图片描述

三、变换和过滤

1. 变换函数与transform方法

变换函数的返回值为同长度的序列,最常用的内置变换函数是累计函数:
cumcount
cumsum
cumprod
cummax
cummin

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值