2017-02-06 28 views
0

加入多個大熊貓的數據庫我從2009年到2016年 每年數據幀每個數據幀有兩列C_ID並分別標記了一年列。我想要外聯所有數據框。外python中

因此,例如

df_2009:

C_ID 2009 
A  456 
B  754 
C  332 

df_2010:

C_ID 2010 
A  3454 
C  54 
E  234 

我發現在計算器上其他職位這一做法:

dfs = [df_2009, df_2010, df_2011, df_2012, df_2013, df_2014, df_2015, df_2016 ] 
from functools import partial 
merge = partial(pd.merge, on=['C_ID']) 

result = dfs[0] 
for df in dfs[1:]: 
    result = merge(result, df) 

但不幸的是這個我是一個內部連接,它除去了所有不在所有數據集中的C_ID。我需要做一個外連接。

+0

你檢查'pd.merge'的文檔?有一個'how'關鍵字參數。 – cel

+0

工作 - 非常感謝 – jeangelj

回答

0

謝謝你@cel,我說怎麼= '外' 和它的工作

dfs = [df_2009, df_2010, df_2011, df_2012, df_2013, df_2014, df_2015, df_2016 ] 
from functools import partial 
merge = partial(pd.merge, on=['C_ID'], how ='outer') 

result = dfs[0] 
for df in dfs[1:]: 
    result = merge(result, df)