Pandas: remova colunas se o nome contiver uma string específica
Você pode usar os seguintes métodos para remover colunas de um DataFrame do pandas cujo nome contém strings específicas:
Método 1: remover colunas se o nome contiver uma string específica
df. drop (list(df. filter (regex=' this_string ')), axis= 1 , inplace= True )
Método 2: remover colunas se o nome contiver uma das várias strings específicas
df. drop (list(df. filter (regex=' string1|string2|string3 ')), axis= 1 , inplace= True )
Os exemplos a seguir mostram como usar cada método na prática com o seguinte DataFrame do pandas:
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
Exemplo 1: Remover colunas se o nome contiver uma string específica
Podemos usar a seguinte sintaxe para remover quaisquer colunas do DataFrame que contenham “team” em qualquer lugar do nome da coluna:
#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
Observe que as duas colunas contendo “equipe” no nome foram removidas do DataFrame.
Exemplo 2: Remover colunas se o nome contiver uma das várias strings específicas
Podemos usar a seguinte sintaxe para remover quaisquer colunas do DataFrame que contenham “player” ou “points” em qualquer lugar do nome da coluna:
#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
Observe que as duas colunas contendo “player” ou “points” no nome foram removidas do DataFrame.
Nota : O | O símbolo em pandas é usado como um operador “OR”.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:
Como remover a primeira coluna no Pandas
Como remover colunas duplicadas no Pandas
Como deletar todas as colunas exceto algumas no Pandas