Pandy: usuń kolumny, jeśli nazwa zawiera określony ciąg


Możesz użyć następujących metod, aby usunąć kolumny z ramki DataFrame pandy, której nazwa zawiera określone ciągi:

Metoda 1: Usuń kolumny, jeśli nazwa zawiera określony ciąg

 df. drop (list(df. filter (regex=' this_string ')), axis= 1 , inplace= True )

Metoda 2: Usuń kolumny, jeśli nazwa zawiera jeden z kilku określonych ciągów

 df. drop (list(df. filter (regex=' string1|string2|string3 ')), axis= 1 , inplace= True )

Poniższe przykłady pokazują, jak w praktyce używać każdej metody z następującą ramką DataFrame pand:

 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

Przykład 1: Usuń kolumny, jeśli nazwa zawiera określony ciąg

Możemy użyć następującej składni, aby usunąć z ramki DataFrame dowolne kolumny zawierające słowo „zespół” w dowolnym miejscu w nazwie kolumny:

 #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

Należy zauważyć, że dwie kolumny zawierające w nazwie słowo „zespół” zostały usunięte z ramki DataFrame.

Przykład 2: Usuń kolumny, jeśli nazwa zawiera jeden z kilku określonych ciągów

Możemy użyć poniższej składni, aby usunąć z ramki DataFrame dowolne kolumny zawierające słowo „gracz” lub „punkty” w dowolnym miejscu w nazwie kolumny:

 #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

Należy zauważyć, że dwie kolumny zawierające w nazwie słowo „gracz” lub „punkty” zostały usunięte z ramki DataFrame.

Uwaga : | Symbol w pandach jest używany jako operator „OR”.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w pandach:

Jak usunąć pierwszą kolumnę w Pandach
Jak usunąć zduplikowane kolumny w Pandach
Jak usunąć wszystkie kolumny z wyjątkiem niektórych w Pandach

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *