Pandas Concatenar Data Frames [2022]
Publicados: 2021-01-06Imagine que você tenha dois conjuntos de dados que precisa combinar para realizar a análise. Ao usar SQL, os registros de duas ou mais tabelas em um banco de dados podem ser combinados usando junções SQL. Da mesma forma, também existem opções em Python para concatenar quadros de dados. Então, o que é um quadro de dados? Um quadro de dados em Python tem várias linhas e colunas. É semelhante a uma tabela em SQL. Você tem a biblioteca de software pandas para análise de dados em Python. Os quadros de dados concatenados do Pandas nos ajudam a combinar quadros de dados com base em uma certa lógica.
As diferentes maneiras de combinar quadros de dados:
- Inner Join: Inner join é bastante semelhante à interseção de dois conjuntos. No caso de uma junção interna, um quadro de dados é retornado contendo apenas as linhas com propriedades comuns. Assim, cada linha nos dois quadros de dados combinados deve ter valores de coluna correspondentes.
- Junção Esquerda: Uma junção esquerda retorna todas as linhas do quadro de dados esquerdo e apenas as linhas correspondentes do quadro de dados direito.
- Junção Direita: Uma junção direita retorna todas as linhas do quadro de dados direito e apenas as linhas correspondentes do quadro de dados esquerdo.
- Full ou Outer Join: Uma junção completa mantém todas as linhas do quadro de dados esquerdo e do quadro de dados direito.
Fonte
Vejamos agora as funções presentes no Pandas para combinar quadros de dados ou séries.
Índice
Funções em Pandas
1. Função de junção
Como lemos, o Python tem muitos recursos semelhantes ao SQL disponíveis para combinar dados. Os quadros de dados têm um índice que atua como um endereço. Normalmente, os índices de linha são referidos como índice, enquanto as colunas são endereçadas pelos nomes das colunas. A operação Join permite mesclar todas as colunas de dois quadros de dados. Você pode renomear as colunas esquerda e direita atualizando os parâmetros “lsuffix” e “rsuffix”. Você tem a opção de escolher a forma de mesclagem atualizando o parâmetro “how”.
2. Função de mesclagem
A função de mesclagem é bastante semelhante à operação de junção. No entanto, você obtém controle flexível ao combinar todas as colunas de dois quadros de dados. Você pode usar on = Column Name para mesclar quadros de dados na coluna comum. Você pode atualizar left_on = Column Name ou right_on = Column Name para alinhar tabelas usando colunas do quadro de dados esquerdo ou direito como chaves. Escolher left_index = True ou right_index = True, permite que você use os rótulos de linha do quadro de dados esquerdo ou do quadro de dados direito como chaves de junção.
Sintaxe:
DataFrame.merge( self , right , how='left' , on=None , left_on=None ,
right_on=Nenhum , left_index=False , right_index=False , sort=False , suffixes =('_x' , '_y') , copy=True , Indicator=False , validate=Nenhum )
Leia: Perguntas da entrevista do Pandas

3. Função Concatenar
Usando a função Concat, você pode combinar dados em colunas ou linhas com base em sua escolha. Você pode definir a lógica de junção (left/right/inner/full join) em qualquer um dos dois eixos. Você também tem a opção de verificar se o novo eixo concatenado tem valores duplicados presentes usando Verify_integrity. Se nenhum valor de índice for especificado no eixo de concatenação, o eixo resultante será rotulado como 0,1,… n-1. O parâmetro keys permite formar uma indexação hierárquica usando as chaves passadas.
Sintaxe
pandas.concat( objs , axis=0 , join='left' , join_axes=Nenhum ,
ignore_index=False , keys=Nenhum , levels=Nenhum , names=Nenhum ,
verify_integrity=False , sort=None , copy=True )
Leia: Algoritmo de estrutura de dados em Python
Empacotando
Como vimos em pandas.DataFrame, as funções de mesclagem e junção são usadas para combinar quadros de dados trabalhando em colunas. Há também uma opção para renomear colunas com base no sufixo fornecido. A função de mesclagem oferece mais flexibilidade no caso de alinhamento por linha. Pelo contrário, a função Concat de pandas pode operar em linhas ou colunas.
Nenhuma renomeação de colunas é feita ao usar a função Concat. Pandas concatenar quadros de dados é um recurso essencial quando temos que combinar dois quadros de dados. A mesclagem de dois quadros de dados usando determinadas condições ajuda a preparar os dados necessários para análise e outras tarefas. Assim, para a biblioteca de software pandas, concatenar quadros de dados é uma função integral.
Você está interessado em saber mais sobre as várias funções disponíveis no pandas e se aprofundar na análise de dados? Você pode verificar o PG Diploma in Data Science oferecido pelo upGrad. Os cursos são conduzidos por especialistas do setor e ajudarão você a aprender mais sobre análise exploratória de dados, várias técnicas de visualização de dados e algoritmos em Machine Learning. Comece sua carreira na área de Data Analytics e Machine Learning com o upGrad.
Quais são os diferentes tipos de articulações em Pandas?
A biblioteca Pandas fornece quatro tipos de junções diferentes para combinar quadros de dados. Essas junções são as seguintes - A junção interna é a junção mais básica para combinar quadros de dados. A junção interna retorna um quadro de dados contendo apenas as linhas que possuem propriedades comuns. Portanto, ambos os quadros de dados combinados devem ter valores comuns. A junção completa ou externa retorna todas as linhas dos quadros de dados esquerdo e direito. Em outras palavras, ele fornece a união de ambos os quadros de dados. A junção esquerda retorna todas as linhas do quadro de dados esquerdo junto com as linhas correspondentes do quadro de dados direito. A junção direita é exatamente o oposto da junção esquerda. Ele retorna todas as linhas do quadro de dados direito junto com as linhas correspondentes do quadro de dados esquerdo.
Quais são as diferentes maneiras de concatenar linhas ou colunas?
As linhas ou colunas de dois quadros de dados podem ser concatenadas das seguintes maneiras: 1. Concatenando DataFrame usando .concat() - esta é a maneira mais simples de concatenar duas linhas ou colunas onde usamos a função “.concat()”. 2. Concatenando DataFrame definindo lógica nos eixos - Neste método, definimos lógica diferente nos eixos. A seguir estão as maneiras de definir eixos: Pegue a união (junção = externa), pegue a interseção (junção = interna), Usando índice específico. 3. Concatenando DataFrame usando .append() - a função “.append()” é usada logo antes da função “.concat()” e concatena ao longo do eixo = 0. 4. Concatenando DataFrame ignorando índices - Neste método , ignoramos os índices sem sentido e anexamos o quadro de dados. Usamos ignore_index como um argumento para ignorar os índices sobrepostos.
O que você sabe sobre a função de mesclagem?
A função de mesclagem é operada em dois quadros de dados para mesclar as linhas ou colunas. É uma operação de junção de alta memória e se assemelha a bancos de dados relacionais. Você pode usar on = Column Name para mesclar quadros de dados na coluna comum.
Você pode atualizar left_on = Column Name ou right_on = Column Name para alinhar tabelas usando colunas do quadro de dados esquerdo ou direito como chaves. Escolher left_index = True ou right_index = True, permite que você use os rótulos de linha do quadro de dados esquerdo ou do quadro de dados direito como chaves de junção.