Jak używać numpy where() z wieloma warunkami


Aby użyć funkcji NumPywhere() z wieloma warunkami, możesz użyć następujących metod:

Metoda 1: Użyj Where() z OR

 #select values less than five or greater than 20
x[np. where ((x < 5) | (x > 20))]

Metoda 2: Użyj Where() z AND

 #select values greater than five and less than 20
x[np. where ((x > 5) & (x < 20))]

Poniższy przykład pokazuje, jak zastosować każdą metodę w praktyce.

Metoda 1: Użyj Where() z OR

Poniższy kod pokazuje, jak wybrać każdą wartość w tablicy NumPy mniejszą niż 5 lub większą niż 20:

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

Zauważ, że cztery wartości w tablicy NumPy były mniejsze niż 5 lub większe niż 20.

Możesz także użyć funkcji rozmiaru , aby po prostu dowiedzieć się, ile wartości spełnia jeden z warunków:

 #find number of values that are less than 5 or greater than 20
(x[np. where ((x < 5) | (x > 20))]). size

4

Metoda 2: Użyj Where() z AND

Poniższy kod pokazuje, jak wybrać każdą wartość z tablicy NumPy większą niż 5 i mniejszą niż 20:

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

Tablica wyjściowa wyświetla siedem wartości z oryginalnej tablicy NumPy, które były większe niż 5 i mniejsze niż 20.

Ponownie możesz użyć funkcji rozmiaru , aby określić, ile wartości spełnia oba warunki:

 #find number of values that are greater than 5 and less than 20
(x[np. where ((x > 5) & (x < 20))]). size

7

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje w NumPy:

Jak obliczyć tryb tablicy NumPy
Jak znaleźć indeks wartości w tablicy NumPy
Jak zmapować funkcję na tablicę NumPy

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *