Come utilizzare la funzione where() in panda (con esempi)
La funzione Where() può essere utilizzata per sostituire determinati valori in un DataFrame panda.
Questa funzione utilizza la seguente sintassi di base:
df. where (cond, other=nan)
Per ogni valore in un DataFrame panda in cui cond è True, viene mantenuto il valore originale.
Per ogni valore in cui cond è False, il valore originale viene sostituito con il valore specificato dall’altro argomento.
I seguenti esempi mostrano come utilizzare questa sintassi in pratica con i seguenti DataFrame panda:
import pandas as pd #define DataFrame df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame df points assists rebounds 0 25 5 11 1 12 7 8 2 15 7 10 3 14 9 6 4 19 12 6 5 23 9 5 6 25 9 9 7 29 4 12
Esempio 1: sostituisci i valori nell’intero DataFrame
Il codice seguente mostra come utilizzare la funzione Where() per sostituire tutti i valori che non soddisfano una determinata condizione in un intero DataFrame panda con un valore NaN.
#keep values that are greater than 7, but replace all others with NaN df. where (df>7) points assists rebounds 0 25 NaN 11.0 1 12 NaN 8.0 2 15 NaN 10.0 3 14 9.0 NaN 4 19 12.0 NaN 5 23 9.0 NaN 6 25 9.0 9.0 7 29 NaN 12.0
Possiamo anche usare l’ altro argomento per sostituire i valori con qualcosa di diverso da NaN.
#keep values that are greater than 7, but replace all others with 'low' df. where (df>7, other=' low ') points assists rebounds 0 25 low 11 1 12 low 8 2 15 low 10 3 14 9 low 4 19 12 low 5 23 9 low 6 25 9 9 7 29 low 12
Esempio 2: sostituisci i valori in una colonna DataFrame specifica
Il codice seguente mostra come utilizzare la funzione Where() per sostituire tutti i valori che non soddisfano una determinata condizione in una colonna specifica di un DataFrame.
#keep values greater than 15 in 'points' column, but replace others with 'low' df[' points '] = df[' points ']. where (df[' points ']>15, other=' low ') #view DataFrame df points assists rebounds 0 25 5 11 1 low 7 8 2 low 7 10 3 low 9 6 4 19 12 6 5 23 9 5 6 25 9 9 7 29 4 12
Puoi trovare la documentazione online completa per la funzione pandaswhere() qui .
Risorse addizionali
I seguenti tutorial spiegano come utilizzare altre funzioni comuni nei panda:
Come utilizzare la funzione description() in Panda
Come utilizzare la funzione idxmax() in Panda
Come applicare una funzione alle colonne selezionate in Pandas