Panda: come usare like in query()


È possibile utilizzare i seguenti metodi per utilizzare LIKE (simile a SQL) in una funzione panda query() per trovare righe contenenti un modello particolare:

Metodo 1: trova righe contenenti un modello

 df. query (' my_column.str.contains("pattern1") ')

Metodo 2: trova righe contenenti uno di più modelli

 df. query (' my_column.str.contains("pattern1|pattern2") ')

I seguenti esempi mostrano come utilizzare ciascun metodo nella pratica con i seguenti DataFrame panda:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Cavs', 'Heat', 'Mavs', 'Mavs', 'Nets',
                            'Heat', 'Cavs', 'Jazz', 'Jazz', 'Hawks'],
                   ' points ': [3, 3, 4, 5, 4, 7, 8, 7, 12, 14],
                   ' rebounds ': [15, 14, 14, 10, 8, 14, 13, 9, 5, 4]})

#view DataFrame
print (df)

    team points rebounds
0 Cavs 3 15
1 Heat 3 14
2 Mavs 4 14
3 Mavs 5 10
4 Nets 4 8
5 Heat 7 14
6 Cavs 8 13
7 Jazz 7 9
8 Jazz 12 5
9 Hawks 14 4

Esempio 1: trova righe contenenti un modello

Il codice seguente mostra come utilizzare la funzione query() per trovare tutte le righe nel DataFrame che contengono “avs” nella colonna del team :

 df. query (' team.str.contains("avs") ')

        team points rebounds
0 Cavs 3 15
2 Mavs 4 14
3 Mavs 5 10
6 Cavs 8 13

Ogni riga restituita contiene “avs” da qualche parte nella colonna della squadra .

Tieni inoltre presente che questa sintassi fa distinzione tra maiuscole e minuscole.

Quindi, se utilizzassimo invece “AVS”, non riceveremmo alcun risultato perché non ci sono righe con “AVS” maiuscolo nella colonna della squadra .

Esempio 2: trova righe contenenti uno di più modelli

Il codice seguente mostra come utilizzare la funzione query() per trovare tutte le righe nel DataFrame che contengono “avs” o “eat” nella colonna del team :

 df. query (' team.str.contains("avs|eat") ')

        team points rebounds
0 Cavs 3 15
1 Heat 3 14
2 Mavs 4 14
3 Mavs 5 10
5 Heat 7 14
6 Cavs 8 13

Ogni riga restituita contiene “avs” o “eat” da qualche parte nella colonna della squadra .

Nota : il | L’operatore significa “o” in panda. Sentiti libero di usarne quanti vuoi per cercare ancora più design di canali.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:

Panda: come filtrare le righe in base alla lunghezza della stringa
Panda: come eliminare le righe in base alla condizione
Panda: come utilizzare il filtro “NO IN”.

Aggiungi un commento

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