Volgens deze documentatiekan ik maak alleen een join tussen velden met dezelfde naam.
Weet u of het mogelijk is om twee DataFrames samen te voegen in een veld met verschillende namen?
Het equivalent in SQL zou zijn:
SELECT *
FROM df1
LEFT OUTER JOIN df2
ON df1.id_key = df2.fk_key
Antwoord 1, autoriteit 100%
Ik denk dat wat je wilt mogelijk is met merge
. Geef de trefwoordargumenten op voor left_on
en right_on
om Panda’s te vertellen welke kolom(men) van elk DataFrame als sleutels moeten worden gebruikt:
pandas.merge(df1, df2, how='left', left_on=['id_key'], right_on=['fk_key'])
De documentatie beschrijft dit in meer detail op deze pagina.
Antwoord 2
df2[‘id_key’] = df2[‘fk_key’].str.lower()
df1[‘id_key’] = df1[‘id_key’].str.lower()
Probeer nu de dataframes samen te voegen
df3 = pd.merge(df2,df1,how=’inner’, on=’id_key’)