argmax()
вернет только первое вхождение для каждой строки.
http://docs.scipy.org/doc/numpy/reference/generated/numpy.argmax.html
Если вам когда-нибудь понадобится сделать это для фигурного массива, это сработает лучше, чем unravel
:
import numpy as np
a = np.array([[1,2,3], [4,3,1]]) # Can be of any shape
indices = np.where(a == a.max())
Вы также можете изменить свои условия:
indices = np.where(a >= 1.5)
Вышеуказанное дает вам результаты в той форме, которую вы просили. Кроме того, вы можете преобразовать в список координат x, y следующим образом:
x_y_coords = zip(indices[0], indices[1])