我想合并两个数据帧。
数据帧1:
Name Early Mid Late AverageS Date Place Rno Num Bar
xyz 32.0 12.2 32 76 20190202 NY 1 4 2
abc 46.0 24.2 96 67 20190802 SA 2 6 2
ghj 29.0 85.2 34 35 20190211 PY 3 2 7
yui. 9.0 5.2 4 5 20191105 AU 4 1 9
......
数据帧2:
Name Date Place Rno Num Bar Finish Position
xyz 20190202 NY 1 4 2 1
ghj 20190211 PY 3 2 7 4
abc 20190802 SA 2 6 2 2
......
所需数据帧:
Name Early Mid Late AverageS Date Place Rno Num Bar Finish Position
xyz 32.0 12.2 32 76 20190202 NY 1 4 2 1
abc 46.0 24.2 96 67 20190802 SA 2 6 2 2
ghj 29.0 85.2 34 35 20190211 PY 3 2 7 4
yui 9.0 5.2 4 5 20191105 AU 4 1 9 NAN
......
我试过了,但在合并的df中,"完成位置"值都更改为NAN。
df = df1.merge(df2,how='left', on=['Name','Bar','Rno','Place','Date','Num'])
正如Vaebhav在注释部分提到的,您的代码是正确的。
我复制了您的流程,得到了以下数据帧:
https://i.stack.imgur.com/RRgeI.png
这就是你想要的。
在这一点上,我建议检查其中一个数据帧是否以某种方式没有正确解析。
请分享更多关于这两个DFs是如何构建的信息。
也许dataframe2没有[Name]为"的行;yui";,因此它显示为";NaN";。
并且我看到数据帧1中的行被显示为"0";是的&";,也许只是";是的"不匹配";yui";。