pandasでグルーピングとカウント
グルーピングはデータの集計に使えます。
例えばtitanicのtraining dataのDataFrameをtrain_df
として以下のように書くと
train_df.groupby('Sex').max()
こんな結果が得られます。
train_df
に対してSex
でグルーピングしてそれぞれの特徴量の最大値を取得したということです。
最大値が取得できないような特徴量は表示されません。
ただ、全ての特徴量の最大値を取得しても特に意味はないので、 実際に使うときは、どの特徴量を見るのかも指定することでしょう。
train_df.groupby('Sex').max().Age
これで男女それぞれの年齢の最大値だけ取り出せます。
Sex female 63.0 male 80.0 Name: Age, dtype: float64
また、複数の項目でグルーピングして、かつ、グルーピングに使った項目でカウントしたりもできます。
train_df.groupby(['Sex','Survived'])['Survived'].count()
出力
Sex Survived female 0 81 1 233 male 0 468 1 109 Name: Survived, dtype: int64
これで男女の生存数の内訳がわかりますね。