Pandas で列の平均を計算する方法
多くの場合、pandas DataFrame 内の 1 つ以上の列の平均を計算することに興味があるかもしれません。幸いなことに、パンダではMean()関数を使用してこれを簡単に行うことができます。
このチュートリアルでは、この関数の使用例をいくつか示します。
例 1: 単一列の平均を求める
次のパンダ データフレームがあるとします。
import pandas as pd import numpy as np #createDataFrame df = pd.DataFrame({'player': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J '], 'points': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19], 'assists': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5], 'rebounds': [np.nan, 8, 10, 6, 6, 9, 6, 10, 10, 7]}) #view DataFrame df player points assists rebounds 0 A 25 5 NaN 1 B 20 7 8.0 2 C 14 7 10.0 3 D 16 8 6.0 4 E 27 5 6.0 5 F 20 7 9.0 6 G 12 6 6.0 7:15 9 10.0 8 I 14 9 10.0 9 D 19 5 7.0
次の構文を使用して、「points」というラベルの付いた列の平均を見つけることができます。
df['points']. mean ()
18.2
Mean() 関数もデフォルトで NA を除外します。たとえば、「リバウンド」列の平均を求める場合、「NaN」の最初の値は単純に計算から除外されます。
df['rebounds']. mean ()
8.0
数値ではない列の平均を見つけようとすると、エラーが発生します。
df['player']. mean ()
TypeError: Could not convert ABCDEFGHIJ to numeric
例 2: 複数の列の平均を求める
次の構文を使用して、複数の列の平均を見つけることができます。
#find mean of points and rebounds columns df[['rebounds', 'points']]. mean () rebounds 8.0 points 18.2 dtype:float64
例 3: すべての列の平均を求める
次の構文を使用して、すべての数値列の平均を求めることもできます。
#find mean of all numeric columns in DataFrame df. mean () points 18.2 assists 6.8 rebounds 8.0 dtype:float64
Mean() 関数は数値ではない列を単純に無視することに注意してください。
追加リソース
パンダで中央値を計算する方法
Pandasで列の合計を計算する方法
Pandasで列の最大値を見つける方法