如何使两列数据框映射类型?

时间:2020-08-07 08:50:19

标签: dataframe dictionary pyspark transform

如何使两列数据框映射类型? enter image description here

我想用两列数据框创建一个地图类型

-----------------------------结果----------------- -----------------------------------------------

地图 ['account'-> 3,'word1'-> 2,'word5'-> 1 ......]

这是我的代码

keyword_f = df.filter(month(df['date']) >= 7) \
                    .filter(month(df['date']) <= 12) \
                    .filter(df['statistic_type'] == 'keyword_A') \
                    .groupby('word').agg(fn.sum('count'))

1 个答案:

答案 0 :(得分:1)

摸索到wordcount之后,您可以通过这种方式收集结果。

df.groupBy().agg(map_from_arrays(collect_list('col1'), collect_list('col2')).alias('map')) \
  .show(10, False)

+------------------------+
|map                     |
+------------------------+
|[A -> 1, B -> 2, C -> 3]|
+------------------------+