2017-06-26 130 views
2

我想加入兩個數據框。已經嘗試concat,merge和join,但我應該做錯了什麼。Python/Pandas - 合併兩個基於非索引列的數據框

df 1: 

index cnpj country state 
1  7468  34  23 
4  3421  23  12 
7  2314  12  45 


df 2: 

index cnpj street number 
2  7468  32  34 
5  3421  18  89 
546  2314  92  73 

我希望他們用「CNPJ」作爲「加入鍵」,維護DF1的指數合併。它應該看起來像這樣:

df 1: 

index cnpj country state street number 
1  7468  34  23  32  34  
4  3421  23  12  18  89 
7  2314  12  45  92  73 

有關如何做到這一點的任何建議?

回答

2

讓我們用mergesuffixesdrop

df1.merge(df2, on='cnpj',suffixes=('','_y')).drop('index_y',axis=1) 

輸出:

index cnpj country state street number 
0  1 7468  34  23  32  34 
1  4 3421  23  12  18  89 
2  7 2314  12  45  92  73