2015-12-16 77 views
3

我有2個dataframes:郵編大熊貓dataframes到一個新的數據幀

DF_A

country_codes 
0    4 
1    8 
2    12 
3    16 
4    24 

和DF_B

continent_codes 
0    4 
1    3 
2    5 
3    6 
4    5 

兩個dataframes具有相同的長度,但沒有公共列。我想連接這兩個,但由於並非所有的值都是常見的,所以我得到了很多NaN。我如何連接或壓縮成組合數據框?

- 編輯所需的輸出是這樣的:

country_codes continent_codes 
0    4  4 
1    8  3 
2    12  5 
3    16  6 
4    24  5 
+0

什麼是你想要的輸出?如果您只是想填充NaN,請附加['.fillna(args)'](http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas.DataFrame.fillna.html)到你的連接。 –

+0

謝謝@N。 Wouda編輯查詢來回答你。我不想填充NaN,只想簡單地將2個數據幀壓縮在一起 – user308827

+0

您的示例沒有任何nans連接。如果您顯示*不*起作用的示例,則可能會有所幫助。 – DSM

回答

3

下面的代碼會按照你想要的:

pd.concat([df1, df2], axis=1) 

Source

輸出:

country_codes continent_codes 
0    4    4 
1    8    3 
2    12    5 
3    16    6 
4    24    5 
1

從評論:

我覺得這是太簡單了,但我可以建議:

df_A['continent_codes'] = df_B['continent_codes'] 
print(df_A) 

輸出:

country_codes continent_codes 
0    4    4 
1    8    3 
2    12    5 
3    16    6 
4    24    5 
+1

我也喜歡這種方法,但它只適用於1列。 –