相关疑难解决方法(0)

如何在groupBy之后将值聚合到集合中?

我有一个带有架构的数据帧:

[visitorId: string, trackingIds: array<string>, emailIds: array<string>]
Run Code Online (Sandbox Code Playgroud)

正在寻找一种方法来分组(或者可能汇总?)由visitorid组成的数据帧,其中的trackingIds和emailIds列将一起追加.所以例如,如果我的初始df看起来像:

visitorId   |trackingIds|emailIds
+-----------+------------+--------
|a158|      [666b]      |    [12]
|7g21|      [c0b5]      |    [45]
|7g21|      [c0b4]      |    [87]
|a158|      [666b, 777c]|    []
Run Code Online (Sandbox Code Playgroud)

我希望我的输出df看起来像这样

visitorId   |trackingIds|emailIds
+-----------+------------+--------
|a158|      [666b,666b,777c]|      [12,'']
|7g21|      [c0b5,c0b4]     |      [45, 87]
Run Code Online (Sandbox Code Playgroud)

试图使用groupByagg运营商但没有太多运气.

scala apache-spark apache-spark-sql

48
推荐指数
2
解决办法
5万
查看次数

标签 统计

apache-spark ×1

apache-spark-sql ×1

scala ×1