Python numpy.argmax()
Suraj Joshi
2023年1月30日
-
numpy.argmax()
的語法 -
示例程式碼:
numpy.argmax()
尋找陣列中最大值的索引的方法 -
示例程式碼: 在
numpy.argmax()
方法中設定axis
引數以查詢陣列中最大值的索引 -
示例程式碼:在
numpy.argmax()
方法中設定out
引數查詢陣列中最大值的索引
Python Numpy numpy.argmax()
返回給定 NumPy 陣列中具有最大值的索引。
numpy.argmax()
的語法
numpy.argmax(a, axis=None, out=None)
引數
a |
可以轉換為陣列的陣列或物件,我們需要在其中找到最高值的索引。 |
axis |
沿著行(axis=0 )或列(axis=1 )查詢最大值的索引。預設情況下,通過對陣列進行展平可以找到最大值的索引。 |
out |
np.argmax 方法結果的佔位符。它必須有適當的大小以容納結果。 |
返回值
一個陣列,包含整個陣列中數值最大的元素的索引。
示例程式碼: numpy.argmax()
尋找陣列中最大值的索引的方法
找出一維陣列中最高值的索引
import numpy as np
a=np.array([2,6,1,5])
print("Array:")
print(a)
req_index=np.argmax(a)
print("\nIndex with the largest value:")
print(req_index)
print("\nThe largest value in the array:")
print(a[req_index])
輸出:
Array:
[2 6 1 5]
Index with the largest value:
1
The largest value in the array:
6
它給出了給定輸入陣列中值最大的元素的索引。
我們也可以使用 np.argmax()
方法返回的索引找到陣列中的最大值。
如果我們在陣列中有兩個最大的值,該方法返回陣列中最先出現的最大元素的索引。
import numpy as np
a=np.array([2,6,1,6])
print("Array:")
print(a)
req_index=np.argmax(a)
print("\nIndex with the largest value:")
print(req_index)
print("\nThe largest value in the array:")
print(a[req_index])
輸出:
Array:
[2 6 1 5]
Index with the largest value:
1
The largest value in the array:
6
這裡,6
是陣列中出現兩次的最高值,但是 np.argmax()
方法返回 6
的索引,在索引 1
處,因為它在陣列中排在第一位。
尋找二維陣列中最高值的索引
import numpy as np
a=np.array([[2,1,6],
[7,4,5]])
print("Array:")
print(a)
req_index=np.argmax(a)
print("\nIndex with the largest value:")
print(req_index)
輸出:
Array:
[[2 1 6]
[7 4 5]]
Index with the largest value:
3
這裡,由於沒有給出 axis
引數,陣列被扁平化,並返回扁平化陣列中最大元素的索引。
示例程式碼: 在 numpy.argmax()
方法中設定 axis
引數以查詢陣列中最大值的索引
沿著列軸尋找最高元素的索引
import numpy as np
a=np.array([[2,1,6],
[7,4,5]])
print("Array:")
print(a)
req_index=np.argmax(a,axis=0)
print("\nIndices with the largest value along column axis:")
print(req_index)
輸出:
Array:
[[2 1 6]
[7 4 5]]
Index with the largest value:
[1 1 0]
如果我們設定 axis=0
,它給出了每列最高值的索引。這裡第一列的最高值在索引 1
,第二列的最高值在索引 1
,第三列的最高值在索引 0
。
沿著行軸查詢最高元素的索引
import numpy as np
a=np.array([[2,1,6],
[7,4,5]])
print("Array:")
print(a)
req_index=np.argmax(a,axis=1)
print("\nIndices with the largest value along row axis:")
print(req_index)
輸出:
Array:
[[2 1 6]
[7 4 5]]
Indices with the largest value along the row axis:
[2 0]
如果我們設定 axis=1
,它給出了每行最高值的索引。
示例程式碼:在 numpy.argmax()
方法中設定 out
引數查詢陣列中最大值的索引
import numpy as np
a=np.array([[2,1,6],
[7,4,5]])
req_index=np.array(0)
print("Array:")
print(a)
np.argmax(a,out=req_index)
print("\nIndex with the largest value:")
print(req_index)
輸出:
Array:
[[2 1 6]
[7 4 5]]
Index with the largest value:
3
在這裡,變數 req_index
作為索引所需值的佔位符,我們必須確保輸出的大小必須等於 req_index
。
作者: Suraj Joshi
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn