Pandas: como mesclar dois dataframes com nomes de colunas diferentes


Você pode usar a seguinte sintaxe básica para mesclar dois DataFrames do pandas com nomes de coluna diferentes:

 p.d. merge (df1, df2, left_on=' left_column_name ', right_on=' right_column_name ')

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: mesclar dois DataFrames Pandas com nomes de coluna diferentes

Vamos supor que temos os dois DataFrames panda a seguir:

 import pandas as pd

#create first DataFrame
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'],
                    ' points ': [4, 4, 6, 8, 9, 5]})

#view DataFrame
print (df1)

  team points
0 to 4
1 B 4
2 C 6
3 D 8
4 E 9
5 F 5

#create second DataFrame
df2 = pd. DataFrame ({' team_name ': ['A', 'B', 'C', 'D', 'E', 'F'],
                    ' rebounds ': [12, 7, 8, 8, 5, 11]})

#view DataFrame
print (df2)

  team_name rebounds
0 to 12
1 B 7
2 C 8
3 D 8
4 E 5
5 F 11

Podemos usar a seguinte sintaxe para realizar uma junção interna, usando a coluna team no primeiro DataFrame e a coluna team_name no segundo DataFrame:

 #merge DataFrames
df3 = pd. merge (df1, df2, left_on=' team ', right_on=' team_name ')

#view result
print (df3)

  team points team_name rebounds
0 A 4 A 12
1 B 4 B 7
2 C 6 C 8
3 D 8 D 8
4 E 9 E 5
5 F 5 F 11

Observe que podemos realizar uma junção interna com êxito, mesmo que os dois nomes de coluna que usamos para a junção sejam diferentes em cada DataFrame.

Observe que também podemos usar o código a seguir para remover a coluna team_name do DataFrame final mesclado, pois os valores nesta coluna correspondem aos da coluna team :

 #drop team_name column
df3. drop (' team_name ', axis= 1 , inplace= True )

#view updated DataFrame
print (df3)

  team points rebounds
0 to 4 12
1 B 4 7
2 C 6 8
3 D 8 8
4 E 9 5
5 F 5 11

Observe que a coluna team_name foi removida do DataFrame.

Relacionado: Como excluir colunas em Pandas (4 exemplos)

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns do panda:

Como alterar a ordem das colunas no Pandas
Como renomear colunas no Pandas
Como classificar colunas por nome no Pandas

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *