パンダ: 複数の集計で 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 から棒グラフを作成する方法