numpy配列の最大値・最小値・平均値・合計値の求め方
スポンサーリンク
numpy.max()で最大値を算出
下記の形式で、npArrayの全ての要素の中から最大値を算出します。
numpy.max(npArray)
Pythonのこういったメソッドを用意してくれているので、コーディングが楽だと思っています。
最小値や平均値も簡単に算出できます。
下記にその例をご紹介したいと思います。
スポンサーリンク
numpy.min()で最小値を算出
下記の形式で、npArrayの全ての要素の中から最小値を算出します。
numpy.min(npArray)
numpy.mean()で平均値を算出
下記の形式で、npArrayの全ての要素の中から平均値を算出します。
numpy.mean(npArray)
numpy.sum()で合計値を算出
下記の形式で、npArrayの全ての要素の中から合計値を算出します。
numpy.sum(npArray)
パラメータaxisの設定で列・行を指定
関数の引数で、パラメータaxisを設定することで、算出する列・行を指定できます。
axis = 0で列を指定
axis = 1で行を指定
下記の形式で、列単位で最大値を算出します。
numpy.max(npArray, axis = 0)
下記の形式で、行単位で最小値を算出します。
numpy.min(npArray, axis = 1)
numpy.max() numpy.min() numpy.mean() numpy.sum()を使ったサンプルコード
下記がサンプルコードになります。
numpy配列の最大値・最小値・平均値をprint出力しています。
後半は、axis = 0 と axis = 1 を指定した場合のサンプルコードになります。
$ cat sample.py #!/usr/bin/env python3 # coding: UTF-8 import numpy as np #2次元でnumpy配列を生成 npArray = np.array( [[0, 1, 2], [3, 4, 5], [6, 7, 8]]) print("配列の全ての要素を出力") print(npArray) print("配列の全ての要素の中から、最大値を出力") print(np.max(npArray)) print("配列の全ての要素の中から、最小値を出力") print(np.min(npArray)) print("配列の全ての要素の平均値を出力") print(np.mean(npArray)) print("配列の全ての要素の合計値を出力") print(np.sum(npArray)) print("列単位で最大値を出力(それぞれの列の最大値を出力)") print(np.max(npArray, axis = 0)) print("行単位で最小値を出力(それぞれの列の最小値を出力)") print(np.min(npArray, axis = 1))
$ ./sample.py 配列の全ての要素を出力 [[0 1 2] [3 4 5] [6 7 8]] 配列の全ての要素の中から、最大値を出力 8 配列の全ての要素の中から、最小値を出力 0 配列の全ての要素の平均値を出力 4.0 配列の全ての要素の合計値を出力 36 列単位で最大値を出力(それぞれの列の最大値を出力) [6 7 8] 行単位で最小値を出力(それぞれの列の最小値を出力) [0 3 6]
スライスで指定した部分配列を対象にする
スライスで指定した部分配列に対して算出することもできます。
下記がサンプルコードになります。
$ cat sample.py #!/usr/bin/env python3 # coding: UTF-8 import numpy as np #2次元でnumpy配列を生成 npArray = np.array( [[0, 1, 2], [3, 4, 5], [6, 7, 8]]) print("配列の全ての要素を出力") print(npArray) print("スライスで指定した0~1行目の配列の全ての要素の中から、最大値を出力") print(np.max(npArray[0:2, :])) print("スライスで指定した0~1列目の配列の全ての要素の中から、最小値を出力") print(np.min(npArray[:, 0:2])) print("スライスで指定した0~1列目の配列の全ての要素の中から、平均値を出力") print(np.mean(npArray[:, 0:2]))
$ ./sample.py 配列の全ての要素を出力 [[0 1 2] [3 4 5] [6 7 8]] スライスで指定した0~1行目の配列の全ての要素の中から、最大値を出力 5 スライスで指定した0~1列目の配列の全ての要素の中から、最小値を出力 0 スライスで指定した0~1列目の配列の全ての要素の中から、平均値を出力 3.5
スポンサーリンク