【问题标题】:Pandas overlay one dataframe on another熊猫将一个数据帧覆盖在另一个数据帧上
【发布时间】:2018-08-18 12:52:30
【问题描述】:

我有两个数据框,它们具有相同的列和完全相同的行数

数据框1包含原始数据,数据框2包含已更改的字段(更改的字段包含新值,未更改的字段为nan)。

我想基本上将 df 2 中的“新数据”覆盖在 df 1 中的数据上,并得到下面的结果。

df1:

Key   a    b

123   6    1
124   7    6
125   3    5

df2:

Key   a    b

123   nan  nan
124   8    nan
125   nan  4

Result df:

Key   a    b

123   6    1
124   8    6
125   3    4

【问题讨论】:

    标签: python pandas dataframe join merge


    【解决方案1】:

    你需要combine_first:

    df2.combine_first(df1)
    

    输出:

    Key    a    b       
    123  6.0  1.0
    124  8.0  6.0
    125  3.0  4.0
    

    【讨论】:

      猜你喜欢
      • 2021-03-02
      • 1970-01-01
      • 2021-12-02
      • 2021-05-08
      • 2022-01-24
      • 1970-01-01
      • 2020-05-12
      • 1970-01-01
      • 2021-04-26
      相关资源
      最近更新 更多