logo

numpy.argmax Pythonissa

Monissa tapauksissa, joissa taulukon koko on liian suuri, maksimielementtien löytäminen niistä kestää liian kauan. Tätä tarkoitusta varten Pythonin numpy-moduuli tarjoaa toiminnon nimeltä numpy.argmax() . Tämä funktio palauttaa enimmäisarvojen indeksit, jotka palautetaan määritetyn akselin mukana.

numpy argmax

Syntaksi:

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

Parametrit

x: array_like

Tämä parametri määrittää lähdetaulukon, jonka maksimiarvon haluamme tietää.

mysql luo käyttäjä

akseli: int (valinnainen)

Tämä parametri määrittää akselin, jota pitkin indeksi on, ja oletusarvoisesti se on litteässä taulukossa.

ulos: array (valinnainen)

Tämä parametri määrittää ndarray, johon tulos lisätään. Tämä on samaa tyyppiä ja muotoa, mikä sopii tuloksen tallentamiseen

esimerkki binaarihakupuusta

Palauttaa

Tämä parametri määrittelee ndarray, joka sisältää taulukon indeksit. Muoto on sama kuin x.muoto akselin suuntainen mitta poistettuna.

Esimerkki 1:

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

Lähtö:

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

Yllä olevassa koodissa

  • Olemme tuoneet numpyn aliasnimellä np.
  • Olemme luoneet taulukon 'x' käyttämällä np.arange() funktio neljän rivin ja viiden sarakkeen muodossa.
  • Olemme myös lisänneet 7 jokaiseen taulukon elementtiin.
  • Olemme ilmoittaneet muuttujan 'ja' ja määritti palautetun arvon np.argmax() toiminto.
  • Olemme läpäisseet joukon 'x' funktiossa.
  • Lopuksi yritimme tulostaa arvon 'ja' .

Tulosteessa se näyttää taulukon maksimielementin indeksit.

Esimerkki 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 

Lähtö:

 array([3, 3, 3, 3, 3], dtype=int64) array([4, 4, 4, 4], dtype=int64) 

Esimerkki 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] 

Lähtö:

lajittelu Javassa arraylistissa
 (3, 4) 26 

Esimerkki 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 

Lähtö:

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

Yllä olevassa koodissa

  • Olemme tuoneet numpyn aliasnimellä np.
  • Olemme luoneet moniulotteisen taulukon 'a ' käyttämällä np.array() toiminto.
  • Olemme ilmoittaneet muuttujan 'index_arr' ja määritti palautetun arvon np.argmax() toiminto.
  • Olemme läpäisseet joukon 'a' ja funktion akseli.
  • Yritimme tulostaa arvon 'index_arr' .
  • Lopulta yritimme hakea taulukon maksimiarvon kahdella eri tavalla, jotka ovat melko samanlaisia ​​kuin np.argmax() .

Tulosteessa se näyttää taulukon enimmäiselementtien indeksit ja näissä indekseissä olevat arvot.