Pandas: como deletar linhas contendo uma string específica
Você pode usar a seguinte sintaxe para remover linhas contendo uma determinada string em um DataFrame do pandas:
df[df[" col "]. str . contains (" this string ") == False ]
Este tutorial explica vários exemplos de uso prático desta sintaxe com o seguinte 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
Exemplo 1: Remover linhas contendo uma string específica
O código a seguir mostra como remover todas as linhas do DataFrame que contêm “A” na coluna da equipe:
df[df[" team "]. str . contains (" A ")== False ] team conference points 3 B West 6 4 B West 6 5 C East 5
Exemplo 2: Remover linhas que contêm uma string em uma lista
O código a seguir mostra como remover todas as linhas do DataFrame que contêm “A” ou “B” na coluna da equipe:
df[df[" team "]. str . contains (" A|B ")== False ] team conference points 5 C East 5
Exemplo 3: Remover linhas contendo uma string parcial
Nos exemplos anteriores, excluímos linhas com base nas linhas que correspondiam exatamente a uma ou mais strings.
Entretanto, se quisermos remover linhas contendo uma string parcial, podemos usar a seguinte sintaxe:
#identify partial string to look for discard = [" Wes "] #drop rows that contain the partial string "Wes" in the conference column df[~df. conference . str . contains (' | ' .join (discard))] team conference points 0 A East 11 1 A East 8 2 A East 10 5 C East 5
Você pode encontrar mais tutoriais sobre panda nesta página .