python pandas数据框连接两个数据框

bju*_*trs 5 python merge join pandas

我正在尝试加入数据框。他们看起来像这样

DF1 = ID     COUNTRY     YEAR     V1     V2     V3    V4
      12     USA         2012     x      y      z      a
      13     USA         2013     x      y      z      a
      14     RUSSIA      2012     x      y      z      a

DF2 = ID     COUNTRY     YEAR     TRACT
      9      USA         2000       A
      13     USA         2013       B
Run Code Online (Sandbox Code Playgroud)

期望的最终目标是:

DF3 = ID     COUNTRY     YEAR     V1     V2     V3    V4    TRACT    
      9      USA         2000                                 A
      12     USA         2012     x      y      z      a
      13     USA         2013     x      y      z      a      B
      14     RUSSIA      2012     x      y      z      a
Run Code Online (Sandbox Code Playgroud)

我一直在尝试使用 pd.merge 和 .join 函数与 on='outer' 设置没有成功

df3 = pd.merge(df1,df2,how='outer',left_on=['ID','Country','Year'],right_on=['ID',"Country","Year"])
Run Code Online (Sandbox Code Playgroud)

JAB*_*JAB 10

尝试这个:

df.merge(df2,how='outer',left_on=['ID','COUNTRY','YEAR'],right_on=['ID',"COUNTRY","YEAR"])
Run Code Online (Sandbox Code Playgroud)

(列名应根据您的输入表大写)