パンダ: 複数の集計で groupby を使用する方法


次の基本構文を使用して、パンダで複数の集計で groupby を使用できます。

 df. groupby (' team '). agg (
    mean_points=(' points ', np. mean ),
    sum_points=(' points ', np. sum ),
    std_points=(' points ', np. std ))

この特定の式は、 teamという変数によって DataFrame の行をグループ化し、次にPointsという変数のいくつかの要約統計量を計算します。

次の例は、この構文を実際に使用する方法を示しています。

例: Pandas での複数の集計での Groupby の使用

さまざまなバスケットボール選手に関する情報を含む次のパンダ データフレームがあるとします。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Mavs', 'Mavs', 'Heat', 'Heat', 'Heat'],
                   ' points ': [18, 22, 19, 14, 14, 11],
                   ' assists ': [5, 7, 7, 9, 12, 9]})

#view DataFrame
print (df)

   team points assists
0 Mavs 18 5
1 Mavs 22 7
2 Mavs 19 7
3 Heat 14 9
4 Heat 14 12
5 Heat 11 9

次の構文を使用して DataFrame の行をチームごとにグループ化し、各チームのポイントの平均、合計、標準偏差を計算できます。

 import numpy as np

#group by team and calculate mean, sum, and standard deviation of points
df. groupby (' team '). agg (
    mean_points=(' points ', np. mean ),
    sum_points=(' points ', np. sum ),
    std_points=(' points ', np. std ))

      mean_points sum_points std_points
team			
Heat 13.000000 39 1.732051
Mavs 19.666667 59 2.081666

結果には、各チームポイント変数の平均、合計、標準偏差が表示されます。

同様の構文を使用して groupby を実行し、必要なだけ集計を計算できます。

追加リソース

次のチュートリアルでは、他の一般的なパンダのタスクを実行する方法について説明します。

Pandas GroupBy を使用して一意の値をカウントする方法
Pandas Groupby に関数を適用する方法
Pandas GroupBy から棒グラフを作成する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です