pandasのgroupbyについてのメモです。(適宜修正予定)
ソースコードはgithubにもあげてあります。
https://github.com/tocom242242/aifx_blog_codes/blob/master/pandas_samples/groupby.ipynb
groupbyとは
groupbyはある列の要素に対してグループ化(まとめて)処理する時に使います。
とにかく例を見たい方が早いので例を見ていきます。
まず、簡単でdataframeを用意します。
import pandas as pd
df = pd.DataFrame({
'C1': ['A', 'B', 'A', 'C', 'A', 'C', 'A'],
'C2': [1, 4, 8, 16, 32, 64, 128],
})
print(df)
出力は以下のようになります。
C1 C2
0 A 1
1 B 4
2 A 8
3 C 16
4 A 32
5 C 64
6 A 128
各グループの平均値を求める
このdataframeのC1列に対して、グループ化して、各グループの平均値を求めてみます。
mean = df.groupby("C1").mean()
print(mean)
出力
C2
C1
A 42.25
B 4.00
C 40.00
C1列の要素毎(A,B,C)のC2の平均値を計算してくれます。