我有以下数据框(df):
Items Category Quantity Weight(each)
Spoon Kitchen 2 0.7
Tent Shelter 1 80.0
Sleeping Bag Shelter 1 20.0
Sunscreen Health 2 5.0
Water Bottles Kitchen 2 35.0
我想计算每个类别的数量,以及按类别计算的重量平均值。
所需的输出:
count(Quantity) mean(Weight)
Category
Kitchen 4 17.5
Shelter 2 50.0
Health 2 5.0
我知道怎么分开做。但我不确定如何将它们合并在一起。 单独:
df.groupby('Category')['Quantity'].agg(['count'])
df.groupby('Category')['Weight(each)'].agg(['mean'])
答案 0 :(得分:4)
我认为您正在寻找以groupby
传递的agg
+ dict
。
df.groupby('Category').agg({'Quantity' : 'sum', 'Weight(each)' : 'mean'})
Weight(each) Quantity
Category
Health 5.00 2
Kitchen 17.85 4
Shelter 50.00 2