Panda: rimuovi le colonne se il nome contiene una stringa specifica
È possibile utilizzare i seguenti metodi per rimuovere colonne da un DataFrame panda il cui nome contiene stringhe specifiche:
Metodo 1: rimuovere le colonne se il nome contiene una stringa specifica
df. drop (list(df. filter (regex=' this_string ')), axis= 1 , inplace= True )
Metodo 2: rimuovere le colonne se il nome contiene una delle numerose stringhe specifiche
df. drop (list(df. filter (regex=' string1|string2|string3 ')), axis= 1 , inplace= True )
I seguenti esempi mostrano come utilizzare ciascun metodo nella pratica con i seguenti DataFrame panda:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team_name ': ['A', 'B', 'C', 'D', 'E', 'F'], ' team_location ': ['AU', 'AU', 'EU', 'EU', 'AU', 'EU'], ' player_name ': ['Andy', 'Bob', 'Chad', 'Dan', 'Ed', 'Fran'], ' points ': [22, 29, 35, 30, 18, 12]}) #view DataFrame print (df) team_name team_location player_name points 0 A AU Andy 22 1 B AU Bob 29 2 C EU Chad 35 3 D EU Dan 30 4 E TO Ed 18 5 F EU Fran 12
Esempio 1: rimuovere le colonne se il nome contiene una stringa specifica
Possiamo utilizzare la seguente sintassi per rimuovere qualsiasi colonna dal DataFrame che contenga “team” in qualsiasi punto del nome della colonna:
#drop columns whose name contains 'team' df. drop (list(df. filter (regex=' team ')), axis= 1 , inplace= True ) #view updated DataFrame print (df) player_name points 0 Andy 22 1 Bob 29 2 Chad 35 3 Dan 30 4 Ed 18 5 Fran 12
Tieni presente che le due colonne contenenti “team” nel nome sono state rimosse dal DataFrame.
Esempio 2: rimuovere le colonne se il nome contiene una delle numerose stringhe specifiche
Possiamo utilizzare la seguente sintassi per rimuovere qualsiasi colonna dal DataFrame che contenga “giocatore” o “punti” in qualsiasi punto del nome della colonna:
#drop columns whose name contains 'player' or 'points' df. drop (list(df. filter (regex=' player|points ')), axis= 1 , inplace= True ) #view updated DataFrame print (df) team_name team_location 0 A AU 1 B AU 2 C EU 3D EU 4 E AU 5 F EU
Tieni presente che le due colonne contenenti “giocatore” o “punti” nel nome sono state rimosse dal DataFrame.
Nota : il | Il simbolo in panda viene utilizzato come operatore “OR”.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:
Come rimuovere la prima colonna in Pandas
Come rimuovere le colonne duplicate in Pandas
Come eliminare tutte le colonne tranne alcune in Pandas