Come utilizzare numpy where() con più condizioni


È possibile utilizzare i seguenti metodi per utilizzare la funzione NumPywhere() con più condizioni:

Metodo 1: utilizzare Where() con OR

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

Metodo 2: utilizzare Where() con AND

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

L’esempio seguente mostra come utilizzare ciascun metodo nella pratica.

Metodo 1: utilizzare Where() con OR

Il codice seguente mostra come selezionare ciascun valore in un array NumPy inferiore a 5 o maggiore di 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])

Tieni presente che quattro valori nell’array NumPy erano inferiori a 5 o superiori a 20.

Puoi anche utilizzare la funzione dimensione per trovare semplicemente quanti valori soddisfano una delle condizioni:

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

4

Metodo 2: utilizzare Where() con AND

Il codice seguente mostra come selezionare ciascun valore da un array NumPy maggiore di 5 e minore di 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])

L’array di output mostra i sette valori dell’array NumPy originale maggiori di 5 e minori di 20.

Ancora una volta, puoi utilizzare la funzione dimensione per determinare quanti valori soddisfano entrambe le condizioni:

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

7

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni in NumPy:

Come calcolare la modalità dell’array NumPy
Come trovare l’indice dei valori nell’array NumPy
Come mappare una funzione su un array NumPy

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *