多列上的列映射[重复]
Posted
技术标签:
【中文标题】多列上的列映射[重复]【英文标题】:Column Mapping on Multi-columns [duplicate] 【发布时间】:2018-10-09 15:29:49 【问题描述】:Df1:
Country Sex Year Bin
NZ M 2005 1
NZ F 2005 1
NZ M 2007 3
KR F 2005 2
... 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
... 期望的结果:
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 的 [Country, Sex and Year] 上的输入来加入 Df2 的数据框以达到预期的结果。 我尝试过合并/连接,但它似乎只将 1 列识别为映射标准,并最终将所有输入连接在一起..
【问题讨论】:
df1.merge(df2, how='left')
得到什么?
【参考方案1】:
试试下面的代码
result = pd.merge(DF1, DF2, how='left', on=['Country', 'Sex','Year'])
【讨论】:
谢谢,不知道'on',实际上尝试过,但对多列使用双 [[..]] .. 最终出错。再次感谢! @DevinLee:- 欢迎!!以上是关于多列上的列映射[重复]的主要内容,如果未能解决你的问题,请参考以下文章
Pandas列表的列,通过迭代(选择)三列的每个列表元素作为新列和行来创建多列[重复]