【问题标题】:pandas: merge/combine/update two dataframespandas:合并/合并/更新两个数据框
【发布时间】:2015-04-17 13:11:48
【问题描述】:

我有 2 个数据框

   id  nr   lval
0   1  one     1
1   2  two     2
2   3  one     3

   id  nr  rval
4   1  one     4
5   2  one     5
6   3  one     6

我需要合并或组合这两个数据框并使用列“id”作为键。 通过碰撞(列'nr')从第一个数据帧中获取列。 结果应如下所示:

   id  nr   lval  rval
0   1  one     1     4
1   2  two     2     5
2   3  one     3     6

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    由于 dfs 的形状相同,您可以调用 combine_first,lhs df 值取代 rhs df,因此您保留 nr 列值:

    In [3]:
    
    df.combine_first(df1)
    Out[3]:
       id  lval   nr  rval
    0   1     1  one     4
    1   2     2  two     5
    2   3     3  one     6
    

    【讨论】:

    • 在您的 df 示例中,id 看起来像一列,如果它是索引,它应该仍然可以正常工作
    猜你喜欢
    • 2015-10-17
    • 2018-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-27
    • 2020-02-19
    • 2019-12-16
    • 2018-03-09
    相关资源
    最近更新 更多