Таблица поиска и получение столбца из другой таблицы с помощью pyspark

#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|
 --- ---- ---- ----