Een numpy-array filteren (4 voorbeelden)


U kunt de volgende methoden gebruiken om de waarden van een NumPy-array te filteren:

Methode 1: Filter waarden op basis van één voorwaarde

 #filter for values less than 5
my_array[my_array < 5 ]

Methode 2: Waarden filteren met behulp van de “OR”-voorwaarde

 #filter for values less than 5 or greater than 9
my_array[(my_array < 5 ) | (my_array > 9 )]

Methode 3: Waarden filteren met behulp van de “AND”-voorwaarde

 #filter for values greater than 5 and less than 9
my_array[(my_array > 5 ) & (my_array < 9 )]

Methode 4: Filter de waarden in de lijst

 #filter for values that are equal to 2, 3, 5, or 12
my_array[np. in1d (my_array, [2, 3, 5, 12])]

In deze tutorial wordt uitgelegd hoe u elke methode in de praktijk kunt gebruiken met de volgende NumPy-array:

 import numpy as np

#create NumPy array
my_array = np. array ([1, 2, 2, 3, 5, 6, 7, 10, 12, 14])

#view NumPy array
my_array

array([ 1, 2, 2, 3, 5, 6, 7, 10, 12, 14])

Voorbeeld 1: Waarden filteren op basis van een voorwaarde

De volgende code laat zien hoe u de NumPy-arraywaarden filtert op basis van één voorwaarde:

 #filter for values less than 5
my_array[(my_array < 5 )]

array([1, 2, 2, 3])

#filter for values greater than 5
my_array[(my_array > 5 )]

array([6,7,10,12,14])

#filter for values equal to 5
my_array[(my_array == 5 )]

array([5])

Voorbeeld 2: Filter waarden met behulp van de ‘OR’-voorwaarde

De volgende code laat zien hoe u de waarden van de NumPy-array filtert met behulp van een „OR“ -voorwaarde:

 #filter for values less than 5 or greater than 9
my_array[(my_array < 5 ) | (my_array > 9 )]

array([ 1, 2, 2, 3, 10, 12, 14])

Dit filter retourneert NumPy-arraywaarden kleiner dan 5 of groter dan 9.

Voorbeeld 3: Filter waarden met behulp van de ‘AND’-voorwaarde

De volgende code laat zien hoe u de waarden van de NumPy-array filtert met behulp van een „AND“-voorwaarde:

 #filter for values greater than 5 and less than 9
my_array[(my_array > 5 ) & (my_array < 9 )]

array([6, 7])

Dit filter retourneert waarden uit de NumPy-array groter dan 5 en kleiner dan 9.

Voorbeeld 4: filter de waarden in de lijst

De volgende code laat zien hoe u NumPy-arraywaarden in een lijst kunt filteren:

 #filter for values that are equal to 2, 3, 5, or 12
my_array[np. in1d (my_array, [2, 3, 5, 12])]

array([ 2, 2, 3, 5, 12])

Dit filter retourneert alleen waarden die gelijk zijn aan 2, 3, 5 of 12.

Opmerking : u kunt hier de volledige documentatie voor de NumPy in1d() -functie vinden.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende filterbewerkingen in Python kunt uitvoeren:

Hoe Pandas DataFrame-rijen te filteren die een specifieke tekenreeks bevatten
Hoe u een Pandas DataFrame op meerdere voorwaarden kunt filteren
Hoe u het “NIET IN”-filter in Pandas DataFrame gebruikt

Einen Kommentar hinzufügen

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