Python 多列上的列映射

Python 多列上的列映射,python,pandas,dataframe,Python,Pandas,Dataframe,Df1: 。。。 Df2: 。。。 预期结果: Country Sex Year Rate NZ M 2005 0.5 NZ M 2006 0.4 NZ F 2005 0.6 NZ F 2006 0.3 我如何加入Df2的数据框架,通过匹配Df1的[国家、性别和年份]输入来实现预期结果。 我尝试了合并/连接,但它似乎只识别出1列作为映射的标准,并最终将所有输入连接在一起。请尝试下面的代码 Country Sex Year Bin

Df1:

。。。 Df2:

。。。 预期结果:

Country Sex Year Rate
NZ      M   2005  0.5
NZ      M   2006  0.4
NZ      F   2005  0.6
NZ      F   2006  0.3
我如何加入Df2的数据框架,通过匹配Df1的[国家、性别和年份]输入来实现预期结果。 我尝试了合并/连接,但它似乎只识别出1列作为映射的标准,并最终将所有输入连接在一起。

请尝试下面的代码

Country Sex Year Bin Rate
NZ      M   2005  1   0.5
NZ      F   2005  1   0.6
NZ      M   2007  3   NaN
KR      F   2005  2   NaN

df1.merge(df2,how='left')
有什么好处?谢谢,我不知道“on”,实际上试过了,但对多列使用了double[..]]。。结果是错误的。再次感谢@德文利:-欢迎!!
Country Sex Year Bin Rate
NZ      M   2005  1   0.5
NZ      F   2005  1   0.6
NZ      M   2007  3   NaN
KR      F   2005  2   NaN
result = pd.merge(DF1, DF2, how='left', on=['Country', 'Sex','Year'])