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

リストとArray.arrayの場合
リスト(List)とArray.arrayの最大値のインデックスを取得するには、index()メソッドとmax()関数を使います。
まず、リストもしくはArray.arrayからindex()メソッドを呼び出します。
index()メソッドの引数に、max()関数を指定します。
そして、max()関数の引数にリストもしくはArray.arrayを指定します。
array.index(max(array))
上記のindex()メソッドは、リストもしくはArray.arrayの最大値のインデックスを返します。
使用例
numbers = [1, 2, 3, 10, 4, 5]
max_index = numbers.index(max(numbers))
print(max_index) #3
print(numbers[max_index]) #10
numpy配列の場合
Numpyの配列(Array)の最大値のインデックスを取得する方法は、2つあります。
argmax()メソッド
1つは、argmax()メソッドを使う方法です。
具体的には、Numpyの配列からargmax()メソッドを呼び出します。
array.argmax()
argmax()メソッドは、呼び出したNumpy配列の最大値のインデックスを返します。
使用例
import numpy as np
nums = np.array([[1, 2, 3],
[4, 10, 6],
[7, 8, 9]])
max_index = nums.argmax()
max_dim_index = np.unravel_index(nums.argmax(), nums.shape)
print(max_index) #4
print(max_dim_index) #(1, 1)
numpy.argmax()
もう1つは、numpyのargmax()を使う方法です。
まず、numpyからargmax()を呼び出します。
そして、argmax()関数の引数にNumpy配列を指定します。
np.argmax(array)
argmax()関数は、引数に指定したNumpy配列の最大値のインデックスを返します。
使用例
import numpy as np
nums = np.array([[1, 2, 3],
[4, 10, 6],
[7, 8, 9]])
max_index = np.argmax(nums)
max_dim_index = np.unravel_index(np.argmax(nums), nums.shape)
print(max_index) #10
print(max_dim_index) #(1, 1)
まとめ
リストもしくはArray.arrayの最大値のインデックスを取得するには、 index()メソッドとmax()関数を使います。
Numpyの配列(Array)の最大値のインデックスを取得するには、次の2つの方法のいずれかを使います。
- argmax()メソッドを使う方法
- numpy.argmax()を使う方法


コメント