pandas中df.groupby详解?

 `df.groupby` 是 pandas 库用于实现按照某些列进行拆分,应用函数和组合的一个功能。步骤如下:
1. 按照指定的一列或多列进行分组 (grouping)
2. 对每个分组应用一个聚合函数 (aggregation)
3. 将每个分组的聚合结果合并成一个数据结构
语法:
df.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, observed=False, **kwargs)
参数:
- `by`: 用于分组的列名或者数组
- `axis`: 默认为 `0`,表示对行进行操作;`1` 表示对列进行操作
- `level`: 整数或者字符串类型的值,表示按照某个特定层次分组
- `as_index`: 默认值为 `True`,表示分组列将在结果中作为索引;若设为 `False`,则分组列将不作为索引。
- `sort`: 默认值为 `True`,表示按分组键进行排序;若设为 `False`,则不进行排序
- `group_keys`: 默认值为 `True`,表示分组键作为新的索引,同时可以控制是否显示在结果中
- `squeeze`: 默认值为 `False`,表示当返回的组是一个单一的组,是否强制其成为一个序列
- `observed`: bool, 默认值为 `False`,表示在拆分时只包含观察到的值
示例:
import pandas as pd
import numpy as np
data = {'Animal':['Dog','Cat','Dog','Cat','Dog','Cat','Dog','Dog','Cat','Cat'],
        'Name':['Happy','Lucy','Lucky','Leo','Milo','Kitty','Lily','Max','MeiMei','Mimi'],
        'Weight':[32,12,45,23,17,8,15,37,24,21]}
df = pd.DataFrame(data)
# 根据 Animal 列进行分组,计算 Weight 列平均值
grouped = df.groupby(['Animal'])
result = grouped['Weight'].mean()
print(result)
输出:
Animal
Cat    16.200000
Dog    26.166667
Name: Weight, dtype: float64
本例中,我们根据 `Animal` 列进行分组,然后对 `Weight` 列进行求平均值。可以看到,输出结果中显示了每个不同的 `Animal` 分组的平均体重。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芯片后端工程师-ratel

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值