どうも、ちょげ(@chogetarou)です。
Numpyの配列(Array)の行ごとの最小値のインデックスを取得する方法を紹介します。
方法

Numpyの配列(Array)の行ごとの最小値のインデックスを取得する方法は、2つあります。
argmin()メソッド
1つは、argmin()メソッドを使う方法です。
具体的には、Numpyの配列からargmin()メソッドを呼び出します。
argmin()の引数「axis」に「1」を指定します。
array.argmin(axis=1)
引数「axis」に「1」を指定したargmin()メソッドは、呼び出したNumpy配列の行ごとの最小値のインデックスを返します。
使用例
import numpy as np
nums = np.array([[1, 2, -100],
[4, -1000, 6],
[7, 8, -10]])
min_num = nums.argmin(axis=1)
print(min_num) #[ 2, 1, 2]
numpy.argmin()
もう1つは、numpyのargmin()を使う方法です。
まず、numpyからargmin()を呼び出します。
そして、argmin()関数の第1引数にNumpy配列、引数「axis」に「1」を指定します。
np.argmin(array, axis=1)
引数「axis」に「1」を指定したargmax()関数は、引数に指定したNumpy配列の行ごとの最小値のインデックスを返します。
使用例
import numpy as np
nums = np.array([[1, 2, -100],
[4, -1000, 6],
[7, 8, -10]])
min_num = np.argmin(nums, axis=1)
print(min_num) #[ 2, 1, 2]
まとめ
Numpyの配列(Array)の行ごとの最小値のインデックスを取得する方法は、次の2つです。
- argmin(axis=1)メソッドを使う方法
- numpy.argmin(array, axis=1)を使う方法
コメント