Tengo una matriz y quiero encontrar dónde está el valor máximo para cada fila. En la misma fila puedo tener los dos valores que son el máximo, así que decidí usar np.argwhere.

np.argwhere(a == np.amax(a,axis=1))

Pero para mi primera fila, no produce nada y no entiendo por qué.

0
isaaccs 20 oct. 2020 a las 14:53

1 respuesta

La mejor respuesta

np.amax devuelve una matriz de filas, mientras que tú quieres una columna. Por lo tanto, desea remodelar su matriz antes de realizar el cálculo:

np.argwhere(a == np.amax(a, axis=1).reshape((-1,1)))
1
Tristan Nemoz 20 oct. 2020 a las 12:02