Python 3.x 合并两个数据帧并覆盖行
我尝试合并两个数据帧- 数据帧1-Python 3.x 合并两个数据帧并覆盖行,python-3.x,pandas,Python 3.x,Pandas,我尝试合并两个数据帧- 数据帧1- Product Buyer Date Store TV Person A 9/18/2018 Boston DVD Person B 4/10/2018 New York Blue-ray Player Person C 9/19/2018 Boston Phone Pers
Product Buyer Date Store
TV Person A 9/18/2018 Boston
DVD Person B 4/10/2018 New York
Blue-ray Player Person C 9/19/2018 Boston
Phone Person A 9/18/2018 Boston
Sound System Person C 3/05/2018 Washington
数据帧2-
Product Type Buyer Date Store
TV Person B 5/29/2018 New York
Phone Person A 2/10/2018 Washington
第一个数据帧约有500k行,而第二个数据帧约有80k行。有时第二个dataframe有主列,但我试图获得最终输出,以显示与dataframe 1相同的列,并使用dataframe 2更新dataframe 1行
输出如下所示-
Product Buyer Date Store
TV Person B 5/29/2018 New York
DVD Person B 4/10/2018 New York
Blue-ray Player Person C 9/19/2018 Boston
Phone Person A 2/10/2018 Washington
Sound System Person C 3/05/2018 Washington
我尝试了连接,但列重复。有没有优雅的解决方案
编辑1-
我已经试过了-
pd.merge(df,df_correction, left_on = ['Product'], right_on = ['Product Type'],how = 'outer')
Product Buyer_x Date_x Store_x Product Type Buyer_y Date_y Store_y
TV Person B 5/29/2018 New York TV Person B 5/29/2018 New York
DVD Person B 4/10/2018 New York NaN NaN NaN NaN
Blue-ray Player Person C 9/19/2018 Boston NaN NaN NaN NaN
Phone Person A 2/10/2018 Washington Phone Person A 2/10/2018 Washington
Sound System Person C 3/05/2018 Washington NaN NaN NaN NaN
我认为联合收割机首先是你要寻找的功能 你能试试吗
d1.重命名(列={'ProductType':'Product'})。设置索引(“产品”)。首先合并(d2.设置索引(“产品”)。重置索引()
为什么不在加入后删除不需要的列?您所说的“合并数据帧”是什么意思?也许这会有所帮助:我不能删除不需要的列,因为我甚至不确定第二个数据帧中的列,而且还有100多个列@无脑:我已经试过了,但是已经生成了很多其他的专栏。因此,我得到的列数几乎是原来的两倍。