Заменить значение в конкретном на соответствующее значение - PullRequest
0 голосов
/ 25 июня 2018

У меня есть фрейм данных с именем REF со следующей структурой:

old_id  new_id
     3       6
     4       7
     5       8

Я хочу заменить все значения, которые могут быть найдены, равными любому из значений old_id в другом фрейме данных NEW, то есть:

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

1 Ответ

0 голосов
/ 25 июня 2018

Использование map:

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

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

или более медленное решение с replace:

df2['old_id'] = df2['old_id'].replace(s)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...