Panda: come filtrare le righe in base ai valori in un elenco
È possibile utilizzare la seguente sintassi di base per filtrare le righe in un DataFrame panda che contengono un valore in un elenco:
df[df[' team ']. isin ([' A ',' B ',' D '])]
Questo particolare esempio filtrerà DataFrame per contenere solo le righe in cui la colonna Team è uguale al valore A , B o D.
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: filtrare Pandas DataFrame in base ai valori dell’elenco
Supponiamo di avere il seguente DataFrame panda che contiene informazioni su vari giocatori di basket:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'C', 'C', 'D', 'D'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame print (df) team points assists rebounds 0 A 18 5 11 1 to 22 7 8 2 B 19 7 10 3 B 14 9 6 4 C 14 12 6 5 C 11 9 5 6 D 20 9 9 7 D 28 4 12
Supponiamo ora di voler filtrare DataFrame per contenere solo righe il cui valore nella colonna team è uguale ad A , B o D.
Possiamo usare la seguente sintassi per fare ciò:
#filter for rows where team is equal to 'A', 'B' or 'D' df[df[' team ']. isin ([' A ',' B ',' D '])] team points assists rebounds 0 A 18 5 11 1 to 22 7 8 2 B 19 7 10 3 B 14 9 6 6 D 20 9 9 7 D 28 4 12
Tieni presente che il DataFrame filtrato contiene solo righe in cui il valore nella colonna Team è uguale ad A , B o D.
Tieni inoltre presente che puoi utilizzare la funzione isin() per filtrare in base a valori numerici.
Ad esempio, possiamo utilizzare il seguente codice per filtrare le righe in cui la colonna assist è uguale a 5 o 9 :
#filter for rows where assists is equal to 5 or 9 df[df[' assists ']. isin ([ 5,9 ] )] team points assists rebounds 0 A 18 5 11 3 B 14 9 6 5 C 11 9 5 6 D 20 9 9
Tieni presente che il DataFrame filtrato contiene solo righe con un valore nella colonna assists uguale a 5 o 9 .
Nota : puoi trovare la documentazione completa per la funzione panda isin() qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:
Panda: come aggiungere un filtro alla tabella pivot
Panda: come filtrare “Non contiene”
Panda: come filtrare le righe contenenti una stringa specifica