обновить столбец на основе нескольких столбцов - PullRequest
0 голосов
/ 20 марта 2020

У меня есть фрейм данных:

enter image description here

И мне нужен такой результат:

enter image description here

Я не понимаю, как это сделать.

1 Ответ

1 голос
/ 20 марта 2020

Такой подход должен работать.

val groupedDF = df.withColumn("item",when(col("has_pencil").equalTo("true"),"Pencil").otherwise(when(col("has_pen").equalTo("true"),"Pen")))
.groupBy("id").agg(collect_set(co("item")).as("has_items"))

val res = df.join(groupedDF,Seq("id"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...