gpt4 book ai didi

apache-spark - Spark DataFrame 通过键将列值聚合到 List 中

转载 作者:行者123 更新时间:2023-12-04 05:27:41 24 4
gpt4 key购买 nike

我有一个 DataFrame看起来像这样:

+-----------------+-------+
|Id | value |
+-----------------+-------+
| 1622| 139685|
| 1622| 182118|
| 1622| 127955|
| 3837|3224815|
| 1622| 727761|
| 1622| 155875|
| 3837|1504923|
| 1622| 139684|
+-----------------+-------+

我想把它变成:
    +-----------------+-------------------------------------------+
|Id | value |
+-----------------+-------------------------------------------+
| 1622|139685,182118,127955,727761,155875,139684 |
| 3837|3224815,1504923 |
+-----------------+-------------------------------------------+
DataFrame 是否可行?仅功能还是需要将其转换为和 RDD ?

最佳答案

DataFrame 是可能的API。尝试:

df.groupBy(col("Id"))
.agg(collect_list(col("value")) as "value")

如果不是 Array你想要一个 String, 分隔,然后试试这个:
df.groupBy(col("Id"))
.agg(collect_list(col("value")) as "value")
.withColumn("value", concat_ws(",", col("value")))

关于apache-spark - Spark DataFrame 通过键将列值聚合到 List 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37440373/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com