【问题标题】:Replace value in a specific with corresponding value将特定值中的值替换为相应的值
【发布时间】:2018-06-25 11:53:14
【问题描述】:

我有一个名为 REF 的数据框,其结构如下:

old_id  new_id
     3       6
     4       7
     5       8

我想替换所有可以找到的值等于另一个数据框NEW 中的任何old_id 值,即:

old_id  column_1  column_2
     3         a         e
     4         b         f
     9         c         g
     9         d         h

因此,新的输出数据集NEW 将是:

old_id  column_1  column_2
     6         a         e
     7         b         f
     9         c         g
     9         d         h

【问题讨论】:

    标签: python python-3.x pandas replace replacewith


    【解决方案1】:

    使用map:

    s = df1.set_index('old_id')['new_id']
    
    df2['old_id'] = df2['old_id'].map(s).fillna(df2['old_id'])
    

    或者slowier solutionreplace

    df2['old_id'] = df2['old_id'].replace(s)
    

    【讨论】:

      猜你喜欢
      • 2016-02-04
      • 2020-04-13
      • 2022-12-31
      • 1970-01-01
      • 2022-06-19
      • 1970-01-01
      • 1970-01-01
      • 2017-03-03
      • 1970-01-01
      相关资源
      最近更新 更多