繁体   English   中英

根据第二个数据框的匹配列更新熊猫数据框

[英]Update pandas dataframe based on matching columns of a second dataframe

我有两个具有相同列的pandas数据帧( df_1df_2 ),但是在一个数据帧( df_1 )中,缺少一列的某些值。 因此,我只想填充df_2中那些缺失的值,但前提是两列的值匹配。

这是一个小例子,我的数据如下所示:

df_1: df_1

df_2: df_2

我试图添加缺少的值:

df_1.update(df_2, overwrite=False)

但是问题是,即使只有一列匹配,它也会填充值。 当列“ housenumber”和“ street”匹配时,我想填写值。

我认为你需要set_indexMultiindexDataFrame秒,然后combine_firstfillna

df1 = df_1.set_index(["housenumber", "street"])
df2 = df_2.set_index(["housenumber", "street"])

df = df1.combine_first(df2).reset_index()

df = df1.fillna(df2).reset_index()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM