Pandas使用更新功能加入数据帧

时间:2017-09-26 23:18:13

标签: python pandas merge pandas-join

我希望加入2个数据帧。左边是历史存储库,右边是当前数据,可能更新历史记录中列出的内容。

我希望根据匹配的2列进行加入(将其称为requestordate。)

所以,我想保留存储库中的所有项目,如果与基于2列的新数据匹配,我想用新数据更新该行的剩余部分。

本质上,这是一个外部联接,它键在两列上,如果匹配则用新数据覆盖。

有关正确方法的任何想法吗?

编辑:

history = pd.concat([history,new])                                                                    
mostrecentupdate = history.groupby(['Requestor','RequestDate'])['LastUpdateDate'].transform(max)         
history = history[history['LastUpdateDate'] == mostrecentupdate]               

1 个答案:

答案 0 :(得分:0)

第1步marge 你正在寻找concat 在这里你可以看到一个例子: https://pandas.pydata.org/pandas-docs/stable/merging.html Step2过滤器 与此类似 how do you filter pandas dataframes by multiple columns