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']])
TestarNeste 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
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
Comentários