Pythonで配列の平均を算出する方法について説明します。
この記事では、Pythonのnumpyライブラリのmean関数とnanmean関数について解説をします。
欠損値がない場合は、mean関数を使います。
欠損値がある場合は、nanmean関数を使います。
Pythonのnumpyライブラリのmean関数
まず、mean関数について説明します。
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])
欠損値が含まれている場合には、nanmean関数
なお、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を習得するためのPython学習サービス「キノクエスト」を運営しています。
キノクエストには、学習カリキュラムがあり、学習順番に悩むことなく学習を進められます。
月額1,990円と本1冊分の値段です。
キノクエストの特徴は下記の通りです。
・Python学習をしている仲間が集まるコミュニティがある
・1000問以上の問題を解いてプログラミングを習得
・環境構築不要ですぐに始められる
・動画と連動しているので、インプットもできる
・月額1,990円で、コミュニティもセット
キノクエストを詳しく知りたい方は、紹介ページをご覧ください。
▼キノクエストの紹介ページはこちら▼
https://kino-code.com/kq_service_a/