我想根据列中的数据帧中的日期来组合一个列表。我该怎么做?
示例
Date words
2020-07-26 ["hello", "world"]
2020-07-26 ["hello", "Stack Overflow"]
结果
Date words
2020-07-26 ["hello","world","hello","Stack Overflow"]
答案 0 :(得分:1)
使用flatten
,collect_list
和df.show(truncate=False)
+----------+-----------------------+
|date |words |
+----------+-----------------------+
|2020-07-26|[hello, world] |
|2020-07-26|[hello, Stack Overflow]|
+----------+-----------------------+
函数。
检查以下代码。
df \
.groupBy("date") \
.agg(flatten(collect_list(col("words")).alias("words"))
.show(truncate=False)
+----------+-------------------------------------+
|date |words |
+----------+-------------------------------------+
|2020-07-26|[hello, world, hello, Stack Overflow]|
+----------+-------------------------------------+
{{1}}