Comando Pandas: df.query() – Realiza uma consulta booleana no DataFrame.

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.

Leia mais