logo

numpy.argmax i Python

I mange tilfeller, der størrelsen på matrisen er for stor, tar det for mye tid å finne de maksimale elementene fra dem. For dette formålet gir numpy-modulen til Python en funksjon kalt numpy.argmax() . Denne funksjonen returnerer indekser for de maksimale verdiene som returneres sammen med den angitte aksen.

numpy argmax

Syntaks:

 numpy.argmax(a, axis=None, out=None) 

Parametere

x: array_like

Denne parameteren definerer kildematrisen hvis maksimalverdi vi ønsker å vite.

execvp

akse: int(valgfritt)

Denne parameteren definerer aksen som indeksen er til stede langs, og som standard er den i den flate matrisen.

ut: array (valgfritt)

Denne parameteren definerer ndarrayen som resultatet skal settes inn i. Dette vil være av samme type og form, som er passende for å lagre resultatet

Returnerer

Denne parameteren definerer en ndarray, som inneholder indeksene til matrisen. Formen er den samme som x.form med dimensjonen langs aksen fjernet.

len av streng i java

Eksempel 1:

 Import numpy as np x = np.arange(20).reshape(4,5) + 7 x y=np.argmax(a) y 

Produksjon:

 array([[ 7, 8, 9, 10, 11], [12, 13, 14, 15, 16], [17, 18, 19, 20, 21], [22, 23, 24, 25, 26]]) 19 

I koden ovenfor

  • Vi har importert numpy med alias navn np.
  • Vi har laget en matrise 'x' ved hjelp av np.arange() funksjon med form av fire rader og fem kolonner.
  • Vi har også lagt til 7 i hvert element i matrisen.
  • Vi har deklarert variabelen 'og' og tildelt den returnerte verdien av np.argmax() funksjon.
  • Vi har passert arrayet 'x' i funksjonen.
  • Til slutt prøvde vi å skrive ut verdien av 'og' .

I utgangen viser den indeksene til det maksimale elementet i matrisen.

Eksempel 2:

 Import numpy as np x = np.arange(20).reshape(4,5) + 7 y=np.argmax(x, axis=0) z=np.argmax(x, axis=1) y z 

Produksjon:

if else statement java
 array([3, 3, 3, 3, 3], dtype=int64) array([4, 4, 4, 4], dtype=int64) 

Eksempel 3:

 Import numpy as np x = np.arange(20).reshape(4,5) + 7 indices = np.unravel_index(np.argmax(x, axis=None), x.shape) indices x[indices] 

Produksjon:

 (3, 4) 26 

Eksempel 4:

 import numpy as np a = np.array([[5,2,1], [3,7,9],[0, 4, 6]]) index_arr = np.argmax(a, axis=-1) index_arr # Same as np.max(a, axis=-1, keepdims=True) result = np.take_along_axis(a, np.expand_dims(index_arr, axis=-1), axis=-1) result1 # Same as np.max(a, axis=-1) result = np.take_along_axis(a, np.expand_dims(index_arr, axis=-1), axis=-1).squeeze(axis=-1) result2 

Produksjon:

 array([[0], [2], [2]]) array([5, 9, 6]) 

I koden ovenfor

  • Vi har importert numpy med alias navn np.
  • Vi har laget en flerdimensjonal matrise 'en ' ved hjelp av np.array() funksjon.
  • Vi har deklarert variabelen 'indeks_arr' og tildelt den returnerte verdien av np.argmax() funksjon.
  • Vi har passert arrayet 'en' og aksen i funksjonen.
  • Vi prøvde å skrive ut verdien av 'indeks_arr' .
  • Til slutt prøvde vi å hente den maksimale verdien av matrisen ved hjelp av to forskjellige måter, som er ganske like np.argmax() .

I utgangen viser den indekser for de maksimale elementene i matrisen og verdiene som er tilstede på disse indeksene.