【毎日Python】Pythonで配列の平均を算出する方法|numpy.mean,nanmean

【毎日Python】Pythonで配列の平均を算出する方法|numpy.mean,nanmean

Pythonで配列の平均を算出する方法です。
使用するのは、Pythonのnumpyライブラリのmean関数とnanmean関数です。

import numpy as np

まず、このような1次元配列で試してみましょう。

a = np.array([1, 5, 12, 0, 5, 1])

mean関数の引数に配列を指定して実行します。
平均を算出することができました。

np.mean(a)

実行結果:

4.0

次に、2次元配列で試してみましょう。

a_2 = np.reshape(a_1,(2,3))
a_2

実行結果:

array([[ 1,  5, 12],
       [ 0,  5,  1]])

まず、行ごとの平均を算出してみます。
引数axisに1を渡して実行します。
行ごとの平均を、配列で取得することができました。

np.mean(a_2, axis=1)

実行結果:

array([6., 2.])

続けて、列ごとの平均を算出してみます。
引数axisに0を渡して実行します。
列ごとの平均を、配列で取得することができました。

np.mean(a_2, axis=0)

実行結果:

array([0.5, 5. , 6.5])

なお、mean関数の場合、指定の配列に欠損値が含まれているとnanが返されます。

a_3 = np.array([1, 5, 12, 0, 5, np.nan])
np.mean(a_3)

実行結果:

nan

そのため、欠損値を除いて配列の平均を算出する場合は、nanmean関数を使用しましょう。

np.nanmean(a_3)

実行結果:

4.6

関連メソッド

【毎日Python】Pythonでデータフレームの行列の平均を計算する方法|DataFrame.mean

【毎日Python】Pythonで配列の最大値、最小値を取得する方法|numpy.ndarray.max/min

【毎日Python】Pythonで欠損値のある配列の最大値・最小値を取得する方法|numpy.nanmax,nanmin

【毎日Python】Pythonで配列の単純平均・加重平均を取得する方法|numpy.average