Pandas `groupby()` 函数详解
Pandas 的 `groupby()` 函数是数据分析中常用的一个强大的工具,它允许您根据一个或多个键对 DataFrame 中的数据进行分组,然后对每个组执行各种聚合操作(如求和、求平均值、求计数等)。
Pandas `groupby()` 函数详解
语法
`groupby()` 函数的语法如下:
```python df.groupby(keys, axis=0, level=None, as_index=True, sort=True) ```
其中:
`keys`:要分组的键。可以是列名、列表或元组。 `axis`:要分组的轴。0 表示行,1 表示列。默认为 0。 `level`:要分组的层级。对于具有多级索引的 DataFrame,此参数将指定要分组的层级。 `as_index`:布尔值。如果为 True,则将分组键设置为索引。默认为 True。 `sort`:布尔值。如果为 True,则在分组之前对 DataFrame 进行排序。默认为 True。
使用
要使用 `groupby()` 函数,只需将键作为参数传递给它,然后对组应用所需的聚合函数。
示例
以下示例演示了如何使用 `groupby()` 函数对 DataFrame 根据性别对数据进行分组,并计算每个性别组的平均身高:
```python import pandas as pd
创建一个 DataFrame df = pd.DataFrame({ '性别': ['男', '男', '女', '女'], '身高': [180, 175, 165, 160] })
根据性别分组 grouped = df.groupby('性别')
计算每个性别组的平均身高 result = grouped['身高'].mean()
打印结果 print(result) ```
输出
``` 性别 男 177.5 女 162.5 ```
`groupby()` 函数还可以与其他函数一起使用,如 `agg()` 函数,它允许您对每个组同时执行多个聚合操作。
示例
以下示例演示了如何使用 `groupby()` 和 `agg()` 函数对 DataFrame 根据性别进行分组,并计算每个性别组的平均身高和年龄,以及人数:
```python import pandas as pd
创建一个 DataFrame df = pd.DataFrame({ '性别': ['男', '男', '女', '女'], '身高': [180, 175, 165, 160], '年龄': [25, 23, 22, 20] })
根据性别分组 grouped = df.groupby('性别')
计算每个性别组的平均身高、平均年龄和人数 result = grouped['身高', '年龄'].agg(['mean', 'size'])
打印结果 print(result) ```
输出
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系 836084111@qq.com 删除。