2010-11-11 36 views
11

Quiero generar una matriz con el índice del valor máximo más alto de cada fila.Determinar el índice de mayor valor en Python's NumPy

a = np.array([ [1,2,3], [6,5,4], [0,1,0] ]) 
maxIndexArray = getMaxIndexOnEachRow(a) 
print maxIndexArray 

[[2], [0], [1]] 

Hay una función np.argmax pero no parece hacer lo que quiera ...

Respuesta

19

La función argmax() qué hacer lo que quiera:

print a.argmax(axis=1) 
array([2, 0, 1]) 
+2

pitón es awesome – JohnTortugo

+0

Esto también existe como una función de nivel superior, por lo que también funciona lo siguiente: 'maxvals = np.argmax (a, axis = 1)' – Robin

Cuestiones relacionadas