Como Unir Duas Tabelas do Excel com Python em 5 Passos (Até Para Quem Nunca Programou)
🔍💻 Imagine que você tem duas planilhas do Excel: uma com dados de clientes e outra com histórico de compras. Juntá-las manualmente seria uma dor de cabeça, certo? Com Python, é possível automatizar essa tarefa em minutos — mesmo que você não seja programador.
Neste tutorial, vou te ensinar como usar a função merge do Pandas, a biblioteca mais poderosa para análise de dados. Vamos lá!
Por Que Usar Python em Vez do Próprio Excel?
- Automatização: Processa milhares de linhas em segundos.
- Flexibilidade: Merge complexos (inner, left, right, outer) com uma linha de código.
- Controle: Trate erros, duplicatas e dados faltantes de forma eficiente.
Pré-requisitos
- Instale o Python (python.org).
- Instale as bibliotecas Pandas e Openpyxl (para Excel):
pip install pandas openpyxl
Passo a Passo: Unindo Tabelas com Python
1. Estrutura das Tabelas
Suponha que temos dois arquivos Excel:
clientes.xlsx
| ID | Nome | Cidade |
|---|---|---|
| 1 | Ana | São Paulo |
| 2 | Carlos | Rio de Janeiro |
compras.xlsx
| ID_Cliente | Produto | Valor |
|---|---|---|
| 1 | Notebook | 4500 |
| 2 | Smartphone | 2500 |
2. Carregue os Dados no Python
import pandas as pd
# Carregar as planilhas
df_clientes = pd.read_excel('clientes.xlsx')
df_compras = pd.read_excel('compras.xlsx')
print("Tabela de Clientes:")
print(df_clientes.head())
print("\nTabela de Compras:")
print(df_compras.head())
3. Use o Merge para Unir as Tabelas
A função merge do Pandas funciona como um JOIN do SQL. Aqui, usaremos um inner join (só registros com IDs correspondentes):
# Unir as tabelas pela coluna de ID
df_final = pd.merge(
left=df_clientes,
right=df_compras,
left_on='ID',
right_on='ID_Cliente',
how='inner'
)
print("\nTabela Unida:")
print(df_final)
Resultado:
| ID | Nome | Cidade | ID_Cliente | Produto | Valor |
|---|---|---|---|---|---|
| 1 | Ana | São Paulo | 1 | Notebook | 4500 |
| 2 | Carlos | Rio de Janeiro | 2 | Smartphone | 2500 |
4. Tipos de Junção (Parâmetro how)
inner: Só registros com chaves presentes em ambas as tabelas.left: Todos os registros da tabela left, mesmo sem correspondência na right.right: Todos os registros da tabela right, mesmo sem correspondência na left.outer: Todos os registros de ambas as tabelas.
5. Salve o Resultado em um Novo Excel
df_final.to_excel('dados_unidos.xlsx', index=False)
print("Arquivo 'dados_unidos.xlsx' salvo com sucesso!")
Erros Comuns (e Como Evitá-los)
- Colunas com Nomes Diferentes: Certifique-se de que
left_oneright_onestejam corretos. - Chaves Duplicadas: Use
validate='one_to_one'no merge para detectar conflitos. - Dados Faltantes: Após o merge, trate valores nulos com
df_final.fillna(0)oudropna().
Automatize Tarefas Chatas e Ganhe Tempo
Com Python e Pandas, juntar tabelas do Excel deixa de ser um martírio. Mesmo que você não domine programação, scripts como esse podem ser adaptados para inúmeras situações.
Blog Cetlag: Transformando dados em insights, um código de cada vez. 📊

Comentários
Postar um comentário