Как объединить 2 датафрейма по значениям?

Есть 2 датафрейма:

a b
1 1
2 2
3 3
4 4

и

a b
1 x
2 y
10 z

Как объединить датафреймы так, чтобы значения(b) из 2-го датафрейма попали в значения 1-го по совпадению колонки a, если будет значение a, которого нет в 1 датафрейме, то его не добавлять?

Вот как будет выглядеть итог:

a b
1 x
2 y
3 3
4 4

Ответы (1 шт):

Автор решения: strawdog

можно обойтись обычным маппингом:

df1["b"] =  df1["b"].map(df2.set_index("a")["b"]).fillna(df1["b"])

теперь df1:

   a  b
0  1  x
1  2  y
2  3  3
3  4  4
→ Ссылка