Объединить два кадра данных, используя два ключа с помощью оператора или
У меня есть два кадра данных по финансовым данным. У каждого есть два ключа, тикер и ключ. Я хотел объединить эти два файла данных на основе сопоставления любого из этих двух ключей (не обязательно их взаимодействие). Если бы я использовал
`pd.merge(a , b, how='left' , on=['ticker', 'cusip'])
это вернуло бы только те наблюдения с подобранным тикером и параграфом. Мне нужно иметь или оператора. что-то вроде этого в sql является то, что я спрашиваю:
select * from a left join b on a.ticker = b.ticker or a.cusip=b.cusip
Буду признателен за ваши советы.
1 ответ
Давайте попробуем это:
df1 = pd.merge(a, b, how='left', on='ticker')
df2 = pd.merge(a, b, how='left', on='cusip')
df_out = pd.concat([df1, df2])