O Pandas é uma biblioteca essencial no ecossistema Python para manipulação e análise de dados. Uma das suas funcionalidades mais poderosas é o método df.query()
, que permite realizar consultas booleanas em um DataFrame de maneira intuitiva e eficiente. Através desse comando, é possível filtrar e selecionar dados com expressões que se assemelham à linguagem SQL, proporcionando uma abordagem mais legível e concisa. Neste artigo, exploraremos como utilizar df.query()
para realizar consultas booleanas e discutir alguns exemplos práticos.
Comando Pandas: Introdução ao uso de df.query() no DataFrame
O método df.query()
permite que os usuários realizem operações de filtragem em um DataFrame utilizando uma sintaxe de string, o que facilita a leitura e a escrita das consultas. Ao usar df.query()
, você pode especificar condições que os dados devem atender para serem retornados, como igualdade, desigualdade e operações lógicas (AND, OR). A vantagem deste método reside na sua capacidade de interpretar expressões de forma mais natural, reduzindo a necessidade de usar a notação tradicional de indexação do Pandas, que pode ser mais verbosa e complexa. Além disso, df.query()
pode melhorar a performance em alguns casos, especialmente em DataFrames grandes, ao otimizar a execução das consultas.
Exemplos Práticos de Consultas Booleanas com df.query()
Vamos considerar um exemplo prático para ilustrar o uso de df.query()
. Suponha que temos um DataFrame chamado dados
que contém informações sobre vendas, incluindo colunas para ‘produto’, ‘venda’ e ‘categoria’. Para filtrar os dados e extrair apenas as vendas superiores a R$ 100, poderíamos usar o seguinte código:
import pandas as pd
# Criando um DataFrame de exemplo
dados = pd.DataFrame({
'produto': ['A', 'B', 'C', 'D'],
'venda': [150, 80, 120, 200],
'categoria': ['eletrônicos', 'móveis', 'eletrônicos', 'móveis']
})
# Usando df.query() para filtrar vendas superiores a R$ 100
resultado = dados.query('venda > 100')
print(resultado)
Esse código retornaria apenas as linhas onde a coluna ‘venda’ é superior a 100, facilitando a análise dos dados. Além disso, é possível combinar várias condições. Por exemplo, para filtrar produtos da categoria ‘eletrônicos’ com vendas acima de R$ 100, o código seria:
resultado = dados.query('venda > 100 and categoria == "eletrônicos"')
print(resultado)
Com esses exemplos, fica evidente como o df.query()
torna o processo de consulta e filtragem de dados mais simples e acessível.
O uso do df.query()
no Pandas oferece uma maneira eficaz e intuitiva de realizar consultas booleanas em DataFrames. A habilidade de expressar condições de filtragem de forma clara e concisa não apenas melhora a legibilidade do código, mas também contribui para a eficiência na análise de dados. À medida que continuamos a explorar as capacidades do Pandas, o df.query()
se destaca como uma ferramenta valiosa para analistas e cientistas de dados, permitindo uma interação mais fluida com os conjuntos de dados.