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

Aggiungi un commento

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