ホームページ > バックエンド開発 > Python チュートリアル > Pandas で複数のグループ化で平均値を計算する方法は?

Pandas で複数のグループ化で平均値を計算する方法は?

Mary-Kate Olsen
リリース: 2024-11-20 01:45:01
オリジナル
414 人が閲覧しました

How to Calculate Average Values with Multiple Groupings in Pandas?

複数のグループ化と平均を使用したグループ別集計

Pandas では、複数のレベルでグループ化されたデータに対して集計を実行するのが一般的な操作です。次の DataFrame について考えてみましょう:

1

2

3

4

5

6

7

cluster  org      time

1      a       8

1      a       6

2      h       34

1      c       23

2      d       74

3      w       6

ログイン後にコピー

一般的なタスクは、「cluster」や「org」などの複数の変数で定義されたグループごとに、「time」などの特定の列の平均を計算することです。

解決策 1: クラスター グループのみの平均

「クラスター」のみでグループ化された「時間」の平均を計算するには、次のコードを使用できます。

1

df.groupby(['cluster']).mean()

ログイン後にコピー

結果:

1

2

3

4

5

              time

cluster

1        12.333333

2        54.000000

3         6.000000

ログイン後にコピー

解決策 2: グループ化の組み合わせの平均値

を計算したい場合「クラスター」と「組織」の各組み合わせの「時間」の平均値:

1

df.groupby(['cluster', 'org']).mean()

ログイン後にコピー

結果:

1

2

3

4

5

6

7

               time

cluster org

1       a    438886

        c        23

2       d      9874

        h        34

3       w         6

ログイン後にコピー

解決策 3: グループ化のネストされた平均

ネストされた平均を実行するには、最初に「cluster」と「org」の組み合わせで平均を計算し、次に「cluster」グループで平均を計算します。

1

2

(df.groupby(['cluster', 'org'], as_index=False).mean()

            .groupby('cluster')['time'].mean())

ログイン後にコピー

結果:

1

2

3

4

cluster  mean(time)

1          15 #=((8 + 6) / 2 + 23) / 2

2          54 #=(74 + 34) / 2

3           6

ログイン後にコピー

以上がPandas で複数のグループ化で平均値を計算する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
関連するチュートリアル
人気のおすすめ
最新のコース
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート