Unindo dois dataframes com pandas
Como juntar dois dataframes no pandas
O pandas é uma biblioteca poderosa para análise de dados em Python. Com ela, é possível realizar uma série de operações para combinar e unificar conjuntos de dados diferentes. Neste tutorial, você aprenderá como juntar dois dataframes no pandas, utilizando as funções merge()
, .join()
e concat()
.
Função merge(): Combinando dados em colunas ou índices comuns
A primeira função que você aprenderá é a merge()
. Essa função pode ser utilizada quando você deseja combinar dois dataframes com base em colunas ou índices comuns, de forma similar às operações de junção em bancos de dados. A função merge()
é flexível e permite diferentes tipos de união.
Para combinar os objetos de dados com base em uma ou mais chaves, como se estivesse fazendo um join em um banco de dados relacional, a função merge()
é a ferramenta que você precisa. Ela é especialmente útil quando você deseja combinar linhas que possuem dados em comum.
É possível realizar uniões muitos-para-um e muitos-para-muitos com a função merge()
. Na união muitos-para-um, um dos dataframes terá várias linhas na coluna de união que repetem os mesmos valores. Por exemplo, os valores podem ser 1, 1, 3, 5 e 5. Ao mesmo tempo, a coluna de união no outro dataframe não terá valores repetidos, como por exemplo 1, 3 e 5.
Como o nome sugere, na união muitos-para-muitos, ambas as colunas de união terão valores repetidos. Essas uniões são mais complexas e resultam no produto cartesiano das linhas unidas. Isso significa que, após a união, você terá todas as combinações de linhas que possuem o mesmo valor na chave de união.
Aqui está um exemplo prático de como utilizar a função merge()
para combinar dois dataframes no pandas:
Neste exemplo, temos dois dataframes: df1
e df2
. Ambos os dataframes possuem uma coluna chamada “ID” que será utilizada como chave de união. Ao realizar o merge utilizando a função pd.merge()
, as linhas são combinadas com base nas chaves de união compartilhadas. O resultado é um novo dataframe chamado df_merged
, que contém as colunas do df1
e do df2
combinadas.
Função .join(): Combinando dados em uma coluna ou índice
A função .join()
é utilizada quando você deseja combinar dois dataframes com base em uma coluna ou índice comum. Ela é uma forma simplificada da função merge()
, focada na união de colunas específicas.
Veja um exemplo de como utilizar a função .join()
para combinar dois dataframes no pandas:
Neste exemplo, utilizamos a função .set_index()
para definir a coluna “ID” como índice nos dois dataframes. Em seguida, utilizamos a função .join()
para combinar os dataframes com base no índice. O resultado é um novo dataframe chamado df_joined
, que contém as colunas do df1
e do df2
combinadas com base no índice comum.
Função concat(): Combinando dados em linhas ou colunas
A função concat()
é utilizada para combinar dataframes ao longo de linhas ou colunas. Ela permite unir os dataframes de forma simples e direta, sem a necessidade de especificar uma chave de união.
Veja um exemplo de como utilizar a função concat()
para combinar dois dataframes no pandas:
Neste exemplo, utilizamos a função pd.concat()
para combinar os dataframes df1
e df2
. Ao passar os dataframes como argumento em uma lista, a função concat()
realiza a combinação ao longo das linhas, resultando em um novo dataframe chamado df_concat
.
Conclusão
Neste tutorial, você aprendeu como combinar dois dataframes no pandas utilizando as funções merge()
, .join()
e concat()
. Cada uma dessas funções possui características específicas e é útil em diferentes situações. Ao dominar essas técnicas, você poderá unificar e melhorar a compreensão dos seus dados ao realizar análises mais completas.
Experimente aplicar essas técnicas em seus próprios conjuntos de dados e aproveite todo o poder do pandas para a análise de dados em Python.