Neste post, vamos explorar como unir DataFrames no Pandas, uma biblioteca Python amplamente utilizada para análise de dados. Vamos criar DataFrames de exemplo e, em seguida, abordar várias técnicas para unir dados utilizando os métodos merge
e concat
do Pandas.
Sumário
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Conhecendo o Pandas
Pandas é uma biblioteca poderosa e versátil, fundamental para manipulação e análise de dados em Python. Desde a sua criação em 2008, ela se tornou uma das ferramentas mais populares para cientistas de dados e analistas. O nome “Pandas” é uma referência ao termo “Panel Data”, utilizado em econometria.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Para quem está começando, o Pandas oferece duas principais estruturas de dados: as Series (unidimensionais) e os DataFrames (bidimensionais). Ambas são essenciais para manipulação de dados e permitem operações rápidas e eficientes.
Se você deseja uma introdução mais detalhada ao Pandas, confira o guia completo na documentação oficial do Pandas. Agora, vamos nos concentrar em como unir DataFrames usando o Pandas.
Unir DataFrames no Pandas
Antes de unir DataFrames, precisamos de exemplos para ilustrar as técnicas. Vamos criar dois DataFrames simples:
# Unir DataFrames no Pandas
import pandas as pd
data1 = {
'ID': [1, 2, 3, 4],
'Nome': ['João', 'Ana', 'Carlos', 'Marta'],
'Idade': [23, 45, 36, 41]
}
data2 = {
'ID': [3, 4, 5, 6],
'Cidade': ['São Paulo', 'Rio de Janeiro', 'Belo Horizonte', 'Salvador'],
'Salário': [8000, 6000, 7500, 6200]
}
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
Unindo DataFrames com merge
O método merge
é utilizado para combinar dois DataFrames com base em uma ou mais chaves. Por exemplo, para unir df1
e df2
pelo campo ‘ID’:
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
# Unir DataFrames no Pandas
df_merged = pd.merge(df1, df2, on='ID')
Isso retornará um DataFrame que contém apenas as linhas com chaves correspondentes em ambos os DataFrames.
Tipos de Junções
O método merge
permite diferentes tipos de junções, semelhantes às operações SQL: inner
, outer
, left
e right
.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
- Inner Join: Retorna apenas as linhas com chaves correspondentes em ambos os DataFrames.
# Unir DataFrames no Pandas
df_inner = pd.merge(df1, df2, on='ID', how='inner')
- Outer Join: Retorna todas as linhas de ambos os DataFrames, preenchendo com
NaN
onde não há correspondência.
# Unir DataFrames no Pandas
df_outer = pd.merge(df1, df2, on='ID', how='outer')
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
- Left Join: Retorna todas as linhas do DataFrame da esquerda e as linhas correspondentes do DataFrame da direita.
# Unir DataFrames no Pandas
df_left = pd.merge(df1, df2, on='ID', how='left')
- Right Join: Retorna todas as linhas do DataFrame da direita e as linhas correspondentes do DataFrame da esquerda.
# Unir DataFrames no Pandas
df_right = pd.merge(df1, df2, on='ID', how='right')
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Unindo DataFrames com concat
O método concat
é usado para concatenar DataFrames ao longo de um eixo. Por exemplo, para concatenar df1
e df2
verticalmente:
# Unir DataFrames no Pandas
df_concat = pd.concat([df1, df2])
Para concatenar horizontalmente:
# Unir DataFrames no Pandas
df_concat_axis1 = pd.concat([df1, df2], axis=1)
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Concatenando com Chaves
Você também pode adicionar uma chave de identificação para cada DataFrame ao concatenar:
# Unir DataFrames no Pandas
df_concat_keys = pd.concat([df1, df2], keys=['df1', 'df2'])
Isso facilita a identificação de qual DataFrame original cada linha pertence.
Links Úteis e Mais Conteúdo
Para mais informações sobre como utilizar o Pandas para análise de dados, confira outros conteúdos no meu blog:
- Vantagens de Aprender Python
- Python Orientado a Objetos
- GroupBy no Pandas
- Selecionar Coluna no Pandas
- Merge no Pandas
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Considerações Finais
Espero que este guia tenha sido útil para aprender como unir DataFrames no Pandas. A prática é essencial para dominar essas técnicas, então encorajo você a experimentar e aplicar esses métodos em seus próprios projetos de análise de dados.
Para aprimorar suas habilidades com o Pandas e se tornar mais eficiente na manipulação de dados, é importante também fortalecer sua compreensão em Python. Recomendamos o livro “Fundamentos em Python: Para Iniciantes em Programação e Computação”, disponível na Amazon, que oferece uma introdução abrangente ao Python.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Junte-se à nossa comunidade no Twitter e inscreva-se no nosso canal do YouTube para acessar mais tutoriais, dicas e recursos. Continue praticando e explorando novas maneiras de manipular dados com o Pandas, e fique atento para mais guias e tutoriais que compartilharemos.