pandas里面的groupby
时间: 2023-08-31 08:05:05 浏览: 97
3.Pandas应用 GroupBy
在pandas中,groupby是一种非常强大的数据分组技术,可以对数据进行分组、聚合、转换等操作,通常用于数据分析和处理。
具体来说,groupby可以将数据按照某个或某些列进行分组,然后对每个分组进行聚合操作,如求和、平均值、中位数等。groupby的语法如下:
```python
grouped = df.groupby(key)
```
其中,key可以是一个列名或多个列名的列表,表示按照哪些列进行分组。grouped是一个GroupBy对象,可以调用各种聚合函数进行操作,如sum、mean、median等。
例如,以下代码将按照“性别”列对数据进行分组,并计算每个分组的平均年龄:
```python
import pandas as pd
data = {'姓名': ['张三', '李四', '王五', '赵六', '钱七', '孙八'],
'性别': ['男', '男', '女', '男', '女', '女'],
'年龄': [20, 25, 30, 35, 40, 45]}
df = pd.DataFrame(data)
grouped = df.groupby('性别')
result = grouped.mean()
print(result)
```
输出结果如下:
```
年龄
性别
女 38.333333
男 26.666667
```
可以看到,按照“性别”列进行分组后,计算出了每个分组的平均年龄。除了mean之外,还可以使用sum、median、max、min等函数进行聚合操作。另外,groupby还支持apply函数,可以对每个分组进行自定义操作,大大增强了其灵活性和适用性。
阅读全文