Waarde-index vinden in numpy array (met voorbeelden)
U kunt de volgende methoden gebruiken om de indexpositie van specifieke waarden in een NumPy-array te vinden:
Methode 1: Vind alle waarde-indexposities
n.p. where (x== value )
Methode 2: Vind de eerste waarde-indexpositie
n.p. where (x== value )[0][0]
Methode 3: Zoek de eerste indexpositie van meerdere waarden
#define values of interest vals = np. array ([ value1 , value2 , value3 ]) #find index location of first occurrence of each value of interest exit = np. argsort (x) go out[np. searchsorted (x, vals, sorter=sorter)]
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.
Methode 1: Vind alle waarde-indexposities
De volgende code laat zien hoe u elke indexpositie kunt vinden die gelijk is aan een bepaalde waarde in een NumPy-array:
import numpy as np #define array of values x = np. array ([4, 7, 7, 7, 8, 8, 8]) #find all index positions where x is equal to 8 n.p. where (x== 8 ) (array([4, 5, 6]),)
Uit het resultaat kunnen we zien dat indexposities 4, 5 en 6 allemaal gelijk zijn aan de waarde 8 .
Methode 2: Vind de eerste waarde-indexpositie
De volgende code laat zien hoe u de eerste indexpositie kunt vinden die gelijk is aan een bepaalde waarde in een NumPy-array:
import numpy as np #define array of values x = np. array ([4, 7, 7, 7, 8, 8, 8]) #find first index position where x is equal to 8 n.p. where (x== 8 )[0][0] 4
Uit het resultaat kunnen we zien dat de waarde 8 voor het eerst verschijnt op indexpositie 4.
Methode 3: Zoek de eerste indexpositie van meerdere waarden
De volgende code laat zien hoe u de eerste indexpositie van meerdere waarden in een NumPy-array kunt vinden:
import numpy as np #define array of values x = np. array ([4, 7, 7, 7, 8, 8, 8]) #define values of interest vals = np. array ([4, 7, 8]) #find index location of first occurrence of each value of interest exit = np. argsort (x) go out[np. searchsorted (x, vals, sorter=sorter)] array([0, 1, 4])
Uit het resultaat kunnen we zien:
- De waarde 4 verschijnt eerst op indexpositie 0.
- De waarde 7 verschijnt eerst op indexpositie 1.
- De waarde 8 verschijnt eerst op indexpositie 4.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in NumPy kunt uitvoeren:
Hoe een functie aan een NumPy-array toe te wijzen
Hoe een NumPy-array naar een lijst in Python te converteren
Hoe de grootte van een vector te berekenen met NumPy