以下のテーブルを準備します。
import pandas as pd
# C: col => 列名
# R: row => 行名
d = {"group": ["a", "a", "b"],
"C1": [1, 2, 3],
"C2": [2, 4, 6],
"C3": [3, 6, 9]}
r = ["R1", "R2", "R3"]
df = pd.DataFrame(d, index=r)
jupyter上で見るとこんな感じになります。
df.groupby("列名").集約関数()
でグループごとに集計することができます。
集約関数の一覧はPandas公式ページのgroupbyの説明ページに載っています。
df.groupby("group").sum() # groupごとの列の合計値を求める
df.集約関数()
でグループごとに集計することができます。
df.sum() # 列の合計値を求める
結果はseriesで返ってくるため、ここではDataFrameに変換し、転置することで見やすくしています。