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

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