Получите vaue столбца из разных рядов другого столбца в потоковой передаче искры - PullRequest
0 голосов
/ 27 июня 2018

У меня искровой структурированный поток, как - Обратите внимание, что есть и другие столбцы, но я уменьшил до 2 столбцов.

+---+---+
| A | B | 
+---+---+
| a | 1 | 
| b | 0 |
| c | 0 |
+---+---+

Я хочу создать новый столбец, значение которого будет равно 1, если X ИЛИ ИСТИННО, В противном случае 0, где возможные значения X и Y равны a, b или c. Например, если я выберу a и c, тогда фрейм данных будет похож на -

+---+---+---+
| A | B | C |
+---+---+---+
| a | 1 | 1 |
| b | 0 | 1 |
| c | 0 | 1 |
+---+---+---+

Потому что (a = 1 ИЛИ c = 0) = 1 Точно так же, если бы я выбрал b и c, в столбце C будет 0. То, что я пробовал, это groupBy какой-то столбец, такой как Timestamp и collect_list на B, а затем проверьте, присутствует ли 1 в собранном списке. Если да, то будет 1 в C.

После этого я попытался соединить его с исходным потоком обратно на основе метки времени. Но его высказывание - внутреннее объединение двух потоковых DataFrames / Datasets не поддерживается.

Можно ли как-нибудь решить эту проблему?

...