DataFrame を集計。インデックスで groupby-python

pandas の DataFrame をグループ化するさい、groupby のキーとしてインデックスが使えます。関数やラムダ式との組み合わせが可能で、わりと自由度が高そうなので試してみます。

- 目次 -

スポンサーリンク

まずは通常の(階層化されていない)インデックス、その後、階層化インデックスで試してみます。

通常のインデックスの場合

テストデータはこんな感じです。

インデックスはAABBBCCの3種類。2桁3桁 を混在させています。

levelを指定して実行

level オプションでインデックスのレベルを指定します。
(インデックスは階層化されていないので 0 固定です)

関数を適用

インデックスに関数を適用し、その結果でグルーピングすることも可能です。例としてlen関数を使って文字列長でグループ化してみます。

ラムダ式も使えます

インデックスにラムダ式を適用し、その結果でグルーピングすることも可能です。

条件を組み合わせ

関数やラムダ式は複数指定できます。
試しに、上の2つを組み合わせてグルーピングしてみます。

階層化インデックスの場合

テストデータ。
前のデータにインデックスを追加しました。

level オプションを使う

level オプションを指定。0 が外側、1 が内側のインデックスです。

ラムダ式を使う

ラムダ式を使う場合、インデックスのレベルを添え字にします

スポンサーリンク

コメントはお気軽に