Hoe u de maximale waarde-index in de numpy-array kunt krijgen


U kunt de volgende methoden gebruiken om de index van de maximale waarde in een NumPy-array te verkrijgen:

Methode 1: Haal de index van de maximale waarde op in een eendimensionale array

 x. argmax ()

Methode 2: Haal de index van de maximale waarde op in elke rij van een multidimensionale array

 x. argmax (axis= 1 )

Methode 3: Haal de index van de maximale waarde op in elke kolom van een multidimensionale array

 x. argmax (axis= 0 )

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.

Voorbeeld 1: Haal de index van de maximale waarde op in een eendimensionale array

De volgende code laat zien hoe u de index van de maximale waarde in een eendimensionale NumPy-array kunt verkrijgen:

 import numpy as np

#create NumPy array of values
x = np. array ([2, 7, 9, 4, 4, 6, 3])

#find index that contains max value
x. argmax ()

2

De functie argmax() retourneert een waarde van 2 .

Dit vertelt ons dat de waarde op indexpositie 2 van de array de maximale waarde bevat.

Als we naar de originele array kijken, kunnen we zien dat de waarde op indexpositie 2 9 is, wat inderdaad de maximale waarde in de array is.

Voorbeeld 2: Haal de index op van de maximale waarde in elke rij van een multidimensionale array

De volgende code laat zien hoe u de index van de maximale waarde in elke rij van een multidimensionale NumPy-array kunt verkrijgen:

 import numpy as np

#create multi-dimentional NumPy array
x = np. array ([[4, 2, 1, 5], [7, 9, 2, 0]])

#view NumPy array
print (x)

[[4 2 1 5]
 [7 9 2 0]]

#find index that contains max value in each row
x. argmax (axis= 1 )

array([3, 1], dtype=int32)

Uit de resultaten kunnen we zien:

  • De maximale waarde van de eerste regel bevindt zich op indexpositie 3 .
  • De maximale waarde van de tweede regel bevindt zich op indexpositie 1 .

Voorbeeld 3: Haal de index op van de maximale waarde in elke kolom van een multidimensionale array

De volgende code laat zien hoe u de index van de maximale waarde in elke kolom van een multidimensionale NumPy-array kunt verkrijgen:

 import numpy as np

#create multi-dimentional NumPy array
x = np. array ([[4, 2, 1, 5], [7, 9, 2, 0]])

#view NumPy array
print (x)

[[4 2 1 5]
 [7 9 2 0]]

#find index that contains max value in each column
x. argmax (axis= 0 )

array([1, 1, 1, 0], dtype=int32)

Uit de resultaten kunnen we zien:

  • De maximale waarde in de eerste kolom bevindt zich op indexpositie 1 .
  • De maximale waarde in de tweede kolom bevindt zich op indexpositie 1 .
  • De maximale waarde in de derde kolom bevindt zich op indexpositie 1 .
  • De maximale waarde in de vierde kolom bevindt zich op indexpositie 0 .

Gerelateerd: een eenvoudige uitleg van NumPy-assen

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in Python uitvoert:

Hoe een NumPy-array met waarden te vullen
Hoe elementen in een NumPy-array te vervangen
Hoe u een specifieke rij uit een NumPy-array kunt halen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert