Объедините 2 кадра данных с различными столбцами в искре - PullRequest
0 голосов
/ 24 января 2019

У меня есть 2 кадра:

df1:

Id    purchase_count   purchase_sim
12       100               1500
13       1020              1300
14       1010              1100
20       1090              1400
21       1300              1600

df2:

Id     click_count      click_sim
12       1030              2500
13       1020              1300
24       1010              1100
30       1090              1400
31       1300              1600

Мне нужно получить объединенный фрейм данных с результатами как:

Id     click_count      click_sim     purchase_count   purchase_sim
12       1030              2500            100               1500
13       1020              1300            1020              1300
14       null              null            1010              1100
24       1010              1100            null              null
30       1090              1400            null              null
31       1300              1600            null              null
20       null              null            1090              1400
21       null              null            1300              1600                                     

Я не могу использовать union из-за разных имен столбцов. Кто-нибудь может предложить мне лучший способ сделать это?

1 Ответ

0 голосов
/ 24 января 2019
All you require a full outer join on ID column.
df1.join(df2, Seq("Id"), "full_outer")
// Since the Id column name is same in both the dataframes, if you use comparison like
df1($"Id") === df2($"Id"), you will get duplicate ID columns

Пожалуйста, обратитесь к документации ниже для будущих ссылок.https://docs.databricks.com/spark/latest/faq/join-two-dataframes-duplicated-column.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...