Как сделать два столбца типа карты dataframe? - PullRequest
0 голосов
/ 07 августа 2020

Как сделать два столбца типа карты dataframe? введите описание изображения здесь

Я хочу создать тип карты с двумя столбцами фреймов данных

---------------------- ------- результат ------------------------------------------ ----------------------

map ['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 Ответ

1 голос
/ 07 августа 2020

После того, как вы нащупаете word и count, вы можете получить результат таким образом.

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

+------------------------+
|map                     |
+------------------------+
|[A -> 1, B -> 2, C -> 3]|
+------------------------+
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...