Panda's: verwijder kolommen als de naam een specifieke tekenreeks bevat
U kunt de volgende methoden gebruiken om kolommen te verwijderen uit een Panda DataFrame waarvan de naam specifieke tekenreeksen bevat:
Methode 1: Kolommen verwijderen als de naam een specifieke tekenreeks bevat
df. drop (list(df. filter (regex=' this_string ')), axis= 1 , inplace= True )
Methode 2: Kolommen verwijderen als de naam een van meerdere specifieke tekenreeksen bevat
df. drop (list(df. filter (regex=' string1|string2|string3 ')), axis= 1 , inplace= True )
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met de volgende panda’s DataFrame:
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
Voorbeeld 1: Kolommen verwijderen als naam een specifieke tekenreeks bevat
We kunnen de volgende syntaxis gebruiken om kolommen uit het DataFrame te verwijderen die ‚team‘ ergens in de kolomnaam bevatten:
#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
Houd er rekening mee dat de twee kolommen met ‚team‘ in de naam zijn verwijderd uit het DataFrame.
Voorbeeld 2: Kolommen verwijderen als de naam een van meerdere specifieke tekenreeksen bevat
We kunnen de volgende syntaxis gebruiken om kolommen uit het DataFrame te verwijderen die ’speler‘ of ‚punten‘ ergens in de kolomnaam bevatten:
#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
Merk op dat de twee kolommen met „speler“ of „punten“ in de naam zijn verwijderd uit het DataFrame.
Opmerking : de | Het symbool in panda’s wordt gebruikt als een “OR”-operator.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in panda’s kunt uitvoeren:
Hoe de eerste kolom in Panda’s te verwijderen
Hoe dubbele kolommen in Pandas te verwijderen
Hoe alle kolommen te verwijderen behalve enkele in Pandas