Hoe numpy where() te gebruiken met meerdere voorwaarden
U kunt de volgende methoden gebruiken om de functie NumPywhere() met meerdere voorwaarden te gebruiken:
Methode 1: Gebruik Where() met OR
#select values less than five or greater than 20 x[np. where ((x < 5) | (x > 20))]
Methode 2: Gebruik Where() met AND
#select values greater than five and less than 20 x[np. where ((x > 5) & (x < 20))]
Het volgende voorbeeld laat zien hoe u elke methode in de praktijk kunt gebruiken.
Methode 1: Gebruik Where() met OR
De volgende code laat zien hoe u elke waarde in een NumPy-array kleiner dan 5 of groter dan 20 selecteert:
import numpy as np #define NumPy array of values x = np. array ([1, 3, 3, 6, 7, 9, 12, 13, 15, 18, 20, 22]) #select values that meet one of two conditions x[np. where ((x < 5) | (x > 20))] array([ 1, 3, 3, 22])
Merk op dat vier waarden in de NumPy-array kleiner dan 5 of groter dan 20 waren.
Je kunt ook de functie size gebruiken om eenvoudig te achterhalen hoeveel waarden aan een van de voorwaarden voldoen:
#find number of values that are less than 5 or greater than 20
(x[np. where ((x < 5) | (x > 20))]). size
4
Methode 2: Gebruik Where() met AND
De volgende code laat zien hoe u elke waarde uit een NumPy-array groter dan 5 en kleiner dan 20 selecteert:
import numpy as np #define NumPy array of values x = np. array ([1, 3, 3, 6, 7, 9, 12, 13, 15, 18, 20, 22]) #select values that meet two conditions x[np. where ((x > 5) & (x < 20))] array([6, 7, 9, 12, 13, 15, 18])
De uitvoerarray geeft de zeven waarden uit de originele NumPy-array weer die groter waren dan 5 en kleiner dan 20.
Ook hier kun je de functie size gebruiken om te bepalen hoeveel waarden aan beide voorwaarden voldoen:
#find number of values that are greater than 5 and less than 20
(x[np. where ((x > 5) & (x < 20))]). size
7
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in NumPy kunt uitvoeren:
Hoe de modus van de NumPy-array te berekenen
Hoe de waarde-index te vinden in de NumPy-array
Hoe een functie aan een NumPy-array toe te wijzen