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