Pandas: selecione linhas onde o valor aparece em qualquer coluna
Freqüentemente, você pode querer selecionar linhas em um DataFrame do pandas onde um determinado valor aparece em uma das colunas.
Felizmente, isso é fácil de fazer usando a função .any pandas. Este tutorial explica vários exemplos de uso prático desta função.
Exemplo 1: Encontre um valor em qualquer coluna
Suponha que temos o seguinte DataFrame do pandas:
import pandas as pd #createDataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'rebounds': [11, 8, 10, 6, 6]}) #view DataFrame print (df) points assists rebounds 0 25 5 11 1 12 7 8 2 15 7 10 3 14 9 6 4 19 12 6
A sintaxe a seguir mostra como selecionar todas as linhas do DataFrame que contêm o valor 25 em uma das colunas:
df[df. isin ([ 25 ]). any (axis= 1 )] points assists rebounds 0 25 5 11
A sintaxe a seguir mostra como selecionar todas as linhas do DataFrame que contêm os valores 25, 9 ou 6 em qualquer uma das colunas:
df[df. isin ([ 25,9,6 ]). any (axis= 1 )] points assists rebounds 0 25 5 11 3 14 9 6 4 19 12 6
Exemplo 2: Encontre um caractere em qualquer coluna
Suponha que temos o seguinte DataFrame do pandas:
import pandas as pd #createDataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'position': ['G', 'G', 'F', 'F', 'C']}) #view DataFrame print (df) position assist points 0 25 5 G 1 12 7 G 2 15 7 F 3 14 9 F 4 19 12 C
A sintaxe a seguir mostra como selecionar todas as linhas no DataFrame que contêm o caractere G em qualquer uma das colunas:
df[df. isin ([' G ']). any (axis= 1 )] position assist points 0 25 5 G 1 12 7 G
A sintaxe a seguir mostra como selecionar todas as linhas do DataFrame que contêm os valores G ou C em qualquer uma das colunas:
df[df. isin ([' G ',' C ']). any (axis= 1 )] position assist points 0 25 5 G 1 12 7 G 4 19 12 C
Recursos adicionais
Como filtrar um DataFrame do Pandas em múltiplas condições
Como encontrar valores únicos em múltiplas colunas no Pandas
Como obter números de linha em um DataFrame do Pandas