У меня есть фрейм данных, в котором я агрегирую по столбцу и выбираю последний элемент, но он каждый раз возвращает другой результат. Есть ли способ, как я могу решить эту проблему без различий и каждый раз получить правильный.
val sourceDF = Seq(
(11,"a1", "a2"),
(11,"b1", "b2"),
(22,"c1", "c2"),
(22,"d1", "d2"),
(33,"e1", "e2")
).toDF("id","name", "city")
sourceDF.show(false)
sourceDF.groupBy("id").agg(
last("name"),
last("city")
).show(false)
+---+-----------------+-----------------+
|id |last(name, false)|last(city, false)|
+---+-----------------+-----------------+
|33 |e1 |e2 |
|11 |a1 |a2 |
|22 |c1 |c2 |
+---+-----------------+-----------------+
Заранее спасибо.