Tamanho de fonte
Alto contraste
Altura de linha

Como fazer um SELECT com pandas: Comparando com SQL

Avatar de Ana Maria Gomes Ana Maria Gomes
4 minutos de leitura 2 meses atrás

Se você já trabalhou com bancos de dados relacionais, provavelmente está familiarizado com a linguagem SQL e seu comando SELECT. Mas você sabia que pode realizar operações semelhantes em Python usando a biblioteca pandas? Neste guia, vamos explorar como fazer um SELECT com pandas e comparar com a sintaxe SQL. Vamos lá!

O que é um SELECT em SQL?

Um SELECT em SQL é uma instrução usada para consultar e recuperar dados de tabelas em um banco de dados. A sintaxe básica envolve especificar as colunas que você deseja selecionar e a tabela de onde esses dados serão extraídos. Por exemplo, SELECT nome, idade FROM usuarios recupera os valores das colunas “nome” e “idade” da tabela “usuarios”. O SELECT é fundamental para a manipulação e análise de dados em SQL, permitindo filtrar, ordenar e agrupar informações conforme necessário.

Exemplo de SELECT em SQL

Vamos começar com um exemplo simples de SELECT em SQL:

SELECT nome, idade FROM pessoas;

Este comando seleciona as colunas nome e idade da tabela pessoas. Agora, vamos ver como isso se traduz em pandas.

O que é um SELECT em pandas?

Em pandas, um SELECT é uma operação que permite selecionar dados específicos de um DataFrame, de forma semelhante ao comando SELECT em SQL. Enquanto no SQL usamos comandos como SELECT * FROM tabela WHERE condição, no pandas utilizamos métodos como df.loc[] e df.query() para filtrar e selecionar dados. Pandas oferece uma flexibilidade maior, permitindo manipulações complexas e operações em diferentes tipos de dados, além de dados relacionais.

Exemplo de SELECT em pandas

Vamos criar um DataFrame e selecionar colunas específicas:

import pandas as pd

# Criando um DataFrame
data = {'nome': ['Ana', 'Bruno', 'Carlos'], 'idade': [23, 35, 45]}
df = pd.DataFrame(data)

# Selecionando colunas específicas
print(df[['nome', 'idade']])
Testar

Neste exemplo, criamos um DataFrame com duas colunas (nome e idade) e selecionamos essas colunas de forma semelhante ao SELECT em SQL.

Comparação entre SELECT em SQL e pandas

Selecionando colunas específicas

Selecionar colunas específicas é uma das operações mais comuns em SQL e pandas.

Exemplo em SQL

SELECT nome, idade FROM pessoas;

Exemplo em pandas

df[['nome', 'idade']]

Selecionando linhas específicas

Selecionar linhas específicas com base em condições é outra operação comum.

Exemplo em SQL

SELECT * FROM pessoas WHERE idade > 30;

Exemplo em pandas

df[df['idade'] > 30]

Selecionando linhas e colunas específicas

Você pode combinar a seleção de linhas e colunas em uma única operação.

Exemplo em SQL

SELECT nome FROM pessoas WHERE idade > 30;

Exemplo em pandas

df.loc[df['idade'] > 30, 'nome']

Selecionando colunas com alias

Em SQL, você pode usar alias para renomear colunas no resultado.

Exemplo em SQL

SELECT nome AS nome_pessoa, idade AS idade_pessoa FROM pessoas;

Exemplo em pandas

df.rename(columns={'nome': 'nome_pessoa', 'idade': 'idade_pessoa'})[['nome_pessoa', 'idade_pessoa']]

Filtrando dados

Filtrar dados com condições simples e múltiplas é essencial para análises mais complexas.

Filtrando com condições simples

Exemplo em SQL

SELECT * FROM pessoas WHERE idade > 30;

Exemplo em pandas

df[df['idade'] > 30]

Filtrando com múltiplas condições

Exemplo em SQL

SELECT * FROM pessoas WHERE idade > 30 AND nome = 'Bruno';

Exemplo em pandas

df[(df['idade'] > 30) & (df['nome'] == 'Bruno')]

Agrupando e agregando dados

Agrupar e agregar dados é uma operação poderosa para sumarizar informações.

Exemplo em SQL

SELECT nome, AVG(idade) FROM pessoas GROUP BY nome;

Exemplo em pandas

df.groupby('nome').agg({'idade': 'mean'})

Conclusão

Neste guia, exploramos como realizar operações de SELECT em pandas, comparando com a sintaxe SQL. Vimos como selecionar colunas, filtrar dados, usar alias e agrupar informações. Ambas as abordagens têm suas vantagens e desvantagens, e a escolha entre elas depende do contexto e das necessidades específicas do seu projeto.

Se você está interessado em aprender mais sobre pandas e SQL, recomendamos explorar a documentação oficial e tutoriais adicionais. Continue praticando e experimentando para dominar essas ferramentas poderosas!

Referências

Imagem de um notebook

Cursos de programação gratuitos com certificado

Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:

  • Conteúdos gratuitos
  • Projetos práticos
  • Certificados
  • +20 mil alunos e comunidade exclusiva
  • Materiais didáticos e download de código
Inicie agora

Comentários

Comentar
Faça parte da discussão Crie sua conta gratuita e compartilhe
sua opinião nos comentários
Entre para a Asimov