#pyspark #lookup #using
#pyspark #поиск #использование
Вопрос:
У меня ниже два искровых фрейма данных, как показано ниже.
df1 —->
ID col1 col2
---------------
001 abd xyz
002 eny opl
001 uyh ikl
003 ewr uji
002 opl rtn
001 jnu wbg
df2 ——>
ID col3 col4
-------------
001 acc1 jbo
002 acc1 unk
003 acc2 plo
004 acc3 edf
005 acc2 tgn
006 acc1 jhu
ожидаемый результат —>
ID col1 col2 col3
---------------
001 abd xyz acc1
002 eny opl acc1
001 uyh ikl acc1
003 ewr uji acc3
002 opl rtn acc1
001 jnu wbg acc1
Может кто-нибудь предложить решение для получения ожидаемого результата с использованием pyspark
Ответ №1:
Левое соединение включено ID
:
df1.join(df2, ['ID'], 'left').drop('col4').show()
--- ---- ---- ----
| ID|col1|col2|col3|
--- ---- ---- ----
|001| abd| xyz|acc1|
|002| eny| opl|acc1|
|001| uyh| ikl|acc1|
|003| ewr| uji|acc2|
|002| opl| rtn|acc1|
|001| jnu| wbg|acc1|
--- ---- ---- ----