Pandas: como usar like em query()


Você pode usar os seguintes métodos para usar LIKE (semelhante ao SQL) em uma função pandas query() para encontrar linhas contendo um padrão específico:

Método 1: Encontre linhas contendo um padrão

 df. query (' my_column.str.contains("pattern1") ')

Método 2: Encontre linhas contendo um dos vários padrões

 df. query (' my_column.str.contains("pattern1|pattern2") ')

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 ': ['Cavs', 'Heat', 'Mavs', 'Mavs', 'Nets',
                            'Heat', 'Cavs', 'Jazz', 'Jazz', 'Hawks'],
                   ' points ': [3, 3, 4, 5, 4, 7, 8, 7, 12, 14],
                   ' rebounds ': [15, 14, 14, 10, 8, 14, 13, 9, 5, 4]})

#view DataFrame
print (df)

    team points rebounds
0 Cavs 3 15
1 Heat 3 14
2 Mavs 4 14
3 Mavs 5 10
4 Nets 4 8
5 Heat 7 14
6 Cavs 8 13
7 Jazz 7 9
8 Jazz 12 5
9 Hawks 14 4

Exemplo 1: Encontre linhas contendo um padrão

O código a seguir mostra como usar a função query() para encontrar todas as linhas no DataFrame que contêm “avs” na coluna team :

 df. query (' team.str.contains("avs") ')

        team points rebounds
0 Cavs 3 15
2 Mavs 4 14
3 Mavs 5 10
6 Cavs 8 13

Cada linha retornada contém “avs” em algum lugar da coluna da equipe .

Observe também que esta sintaxe diferencia maiúsculas de minúsculas.

Portanto, se usássemos “AVS”, não receberíamos nenhum resultado porque não há linhas com “AVS” maiúsculo na coluna da equipe .

Exemplo 2: Encontre linhas contendo um de vários padrões

O código a seguir mostra como usar a função query() para encontrar todas as linhas no DataFrame que contêm “avs” ou “eat” na coluna team :

 df. query (' team.str.contains("avs|eat") ')

        team points rebounds
0 Cavs 3 15
1 Heat 3 14
2 Mavs 4 14
3 Mavs 5 10
5 Heat 7 14
6 Cavs 8 13

Cada linha retornada contém “avs” ou “eat” em algum lugar da coluna da equipe .

Nota : O | O operador significa “ou” em pandas. Sinta-se à vontade para usar quantos quiser para pesquisar ainda mais designs de canais.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:

Pandas: como filtrar linhas com base no comprimento da string
Pandas: como excluir linhas com base na condição
Pandas: como usar o filtro “NO IN”

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *