ホームページ >バックエンド開発 >Python チュートリアル >Pandas で複数のグループ内の平均値を計算するにはどうすればよいですか?

Pandas で複数のグループ内の平均値を計算するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-14 12:49:01499ブラウズ

How to Calculate Average Values Within Multiple Groups in Pandas?

複数の列でグループ化して平均を計算する

Pandas では、複数レベルのグループ化と集計を実行して、複雑な統計を計算できます。一般的なタスクの 1 つは、他の複数の列で定義されたグループ内の列の平均を計算することです。

次の DataFrame について考えてみましょう。

cluster  org      time
1      a       8
1      a       6
2      h       34
1      c       23
2      d       74
3      w       6 
各クラスタ内の組織ごとの時間の平均を計算するには、クラスターと組織の両方で DataFrame をグループ化できます:

df.groupby(['cluster', 'org'], as_index=False).mean()
これにより、クラスターと組織でグループ化された DataFrame が生成されます。各グループに対して計算された時間の平均:

  cluster org     time
0       1   a  12.333333
1       1   c   23.0
2       2   h   34.0
3       2   d   74.0
4       3   w    6.0
各クラスター内の時間の平均だけが必要な場合は、クラスターのみでグループ化できます:

df.groupby('cluster').mean()
これにより、DataFrame が生成されます各クラスターに対して計算された時間の平均を使用します:

  cluster  time
0       1   12.333333
1       2   54.0
2       3    6.0
または、複数列の組み合わせに対して groupby メソッドを使用することもできます。 ['cluster', 'org'] そして時間の平均を計算します:

df.groupby(['cluster', 'org']).mean()['time']
これにより、クラスターと組織の組み合わせごとに計算された時間の平均を持つシリーズが生成されます。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。