2017-09-30 5 views
0

を数える:GROUPBY平均を見つけて、私は次のデータフレーム(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']) 
+2

そして参照[複数GROUPBY列に複数の機能を適用](https://stackoverflow.com/questions/14529838/apply-multiple-functions-to-multiple-groupby-columns) – Zero

答えて

3

私はあなたがdictとして渡さgroupby + aggを探していると思います。正確

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 
+0

はい。ありがとう。私はその辞書について知らなかった。 それは素晴らしいです:) – sheldonzy

関連する問題