Pandas中的groupby方法是一种强大的数据聚合工具,可以对数据进行分组、聚合和转换等操作。下面是一些groupby的例子:
- 创建一个示例数据集
import pandas as pd
data = {'Animal': ['Dog', 'Cat', 'Dog', 'Cat', 'Dog', 'Cat', 'Dog', 'Dog'],
'Name': ['Max', 'Tiger', 'Rocky', 'Kitty', 'Molly', 'Lucy', 'Buddy', 'Charlie'],
'Age': [3, 4, 2, 1, 5, 6, 4, 2],
'Weight': [25, 15, 20, 10, 30, 18, 22, 28]}
df = pd.DataFrame(data)
- 按Animal列分组并计算平均值
grouped = df.groupby('Animal').mean()
print(grouped)
输出结果:
Age Weight
Animal
Cat 3.5 14.3
Dog 3.5 24.2
- 按Animal列分组并计算每组的大小
# 按Animal列分组并计算每组的大小
grouped = df.groupby('Animal').size()
print(grouped)
输出结果:
AnimalCat 4
Dog 4
dtype: int64
- 定义一个自定义函数,用于计算每个组的最大年龄和最小体重之和
def my_func(group):
return group['Age'].max() + group['Weight'].min()
# 按Animal列分组并应用自定义函数
grouped = df.groupby('Animal').apply(my_func)
print(grouped)
输出结果:
Animal
Cat 11
Dog 25
dtype: int64
网友评论