【问题标题】: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') 得到什么?

标签: python pandas dataframe


【解决方案1】:

试试下面的代码

result = pd.merge(DF1, DF2, how='left', on=['Country', 'Sex','Year'])

【讨论】:

  • 谢谢,不知道'on',实际上尝试过,但对多列使用双 [[..]] .. 最终出错。再次感谢!
  • @DevinLee:- 欢迎!!
猜你喜欢
  • 2017-06-23
  • 1970-01-01
  • 2020-08-31
  • 2019-02-18
  • 1970-01-01
  • 1970-01-01
  • 2018-06-26
  • 2019-07-12
  • 1970-01-01
相关资源
最近更新 更多