Panda: come filtrare le righe contenenti una stringa specifica


È possibile utilizzare la seguente sintassi per filtrare le righe contenenti una determinata stringa in un DataFrame panda:

 df[df[" col "]. str . contains (“ this string ”)]

Questo tutorial spiega diversi esempi di utilizzo pratico di questa sintassi con il seguente DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'C'],
                   ' conference ': ['East', 'East', 'East', 'West', 'West', 'East'],
                   ' points ': [11, 8, 10, 6, 6, 5]})

#view DataFrame
df

        team conference points
0 A East 11
1 A East 8
2 A East 10
3 B West 6
4 B West 6
5 C East 5

Esempio 1: filtrare le righe contenenti una stringa specifica

Il codice seguente mostra come filtrare le righe nel DataFrame che contengono “A” nella colonna del team:

 df[df[" team "]. str . contains (“ A ”)]

	team conference points
0 A East 11
1 A East 8
2 A East 10

Vengono mantenute solo le righe la cui colonna della squadra contiene “A”.

Esempio 2: filtrare le righe contenenti una stringa in un elenco

Il codice seguente mostra come filtrare le righe nel DataFrame che contengono “A” o “B” nella colonna del team:

 df[df[" team "]. str . contains (“ A|B ”)]

	team conference points
0 A East 11
1 A East 8
2 A East 10
3 B West 6
4 B West 6

Vengono mantenute solo le righe la cui colonna della squadra contiene “A” o “B”.

Esempio 3: filtrare le righe contenenti una stringa parziale

Negli esempi precedenti abbiamo filtrato in base alle righe che corrispondono esattamente a una o più stringhe.

Se però vogliamo filtrare le righe contenenti una stringa parziale, possiamo utilizzare la seguente sintassi:

 #identify partial string to look for
keep=[" Wes "]

#filter for rows that contain the partial string "Wes" in the conference column
df[df. conference . str . contains (' | ' .join (keep))]

	team conference points
3 B West 6
4 B West 6

Vengono mantenute solo le righe in cui la colonna conferenza contiene “Wes”.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:

Come eliminare le righe in Pandas DataFrame in base alle condizioni
Come filtrare un Pandas DataFrame su più condizioni
Come utilizzare il filtro “NOT IN” in Pandas DataFrame

Aggiungi un commento

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