Как переписать слияние Oracle в Pandas?

1

В Oracle я могу использовать merge into для выбора строк из одного или нескольких источников для обновления, например:

merge into table_A A
using table_B B
on A.id = B.id 
when matched then update 
set A.name = B.name  

Есть ли способ получить тот же результат с помощью Pandas DataFrame?

Теги:
pandas

1 ответ

1
Лучший ответ

В пандах это update

df1=df1.set_index('id')
df1.update(df2.set_index('id'))
df1=df1.reset_index()

Пример данных и результатов

df1=pd.DataFrame({'id':[1,2],'name':['A','B']})
df2=pd.DataFrame({'id':[1,3],'name':['D','C']})
df1=df1.set_index('id')
df1.update(df2.set_index('id'))
df1
Out[58]: 
   name
id     
1     D
2     B
  • 0
    Очень хорошее использование правильного API.
  • 0
    это работает !!! спасибо большое ^^

Ещё вопросы

Сообщество Overcoder
Наверх
Меню