pandas groupy
时间: 2023-06-29 10:03:17 浏览: 133
3.Pandas应用 GroupBy
pandas 的 groupby 是一种基于某些列对数据进行分组的操作,常用于数据聚合和统计分析。通过 groupby 可以将数据按照指定列的值进行分组,并对每个分组进行聚合操作。
下面是一个示例:
```python
import pandas as pd
# 创建示例数据
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily', 'Frank', 'Grace'],
'gender': ['F', 'M', 'M', 'M', 'F', 'M', 'F'],
'age': [25, 32, 18, 47, 23, 19, 29],
'score': [80, 92, 75, 68, 90, 85, 78]
}
df = pd.DataFrame(data)
# 按照 gender 列分组,并计算每个分组的平均年龄和平均分数
grouped = df.groupby('gender')
result = grouped.agg({'age': 'mean', 'score': 'mean'})
print(result)
```
输出结果:
```
age score
gender
F 25.666667 82.666667
M 32.666667 78.333333
```
上述代码首先创建了一个示例数据,包含了学生的姓名、性别、年龄和分数。然后,按照 gender 列进行分组,并使用 agg 方法分别计算每个分组的平均年龄和平均分数。最后,输出计算结果。
在 groupby 中还可以使用多个列进行分组,例如:
```python
grouped = df.groupby(['gender', 'age'])
```
这样会先按照 gender 进行分组,然后在每个 gender 分组内再按照 age 进行分组。
groupby 还有许多其他的用法和参数,可以根据具体需求进行灵活使用。
阅读全文