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で列の最大値を見つける方法

コメントを追加する

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