使用np.unravel_index()
函数:
np.unravel_index(A.argmax(), A.shape) # (2, 2)
原理同下
——————————————————————————————
假定矩阵A,数据类型为array
A = [[0. 1. 2. 3.]
[3. 4. 5. 5.]
[6. 7. 8. 8.]]
h, w = A.shape
position = A.argmax() # position = 10
row, col = position // w, position % w # row, col = 2, 2 (不是(2, 3))
说明:由于A.argmax()
返回的是矩阵从上到下,从左到右遍历的索引值(第一个最大值的索引),因此返回值为一个整数而不是坐标,即便如此,我们也能根据返回的位置结合矩阵形状,根据取整(//)和取余(%)操作得到目标元素在矩阵中的二维索引值