Я новичок в PySpark - и у меня проблема.
Я создал код, который читает файл паркета, запрашивает его с помощью SQL-запроса - в то время как я использую udf (udf получает объект списка и возвращает объект словаря), а затем сохраняю его как паркет.
Вывод, который я хочу получить - Тип карты, в столбце, который я получаю из udf (словарь).
Вывод получаю - строковый тип.
UDF:
def udf_count_frequencies(elements):
if not elements:
return None
counter = Counter()
for e in elements:
e = unicode(e).encode('utf-8').strip()
counter[e] += 1
return dict(counter)
SQL:
select user_id, count_frequencies(collect_list(group))
from user_likes
group by 1
Как я могу запросить данные и получить ответ, который устанавливает столбец как карту, пока я его сохраняю, а не преобразовывает его в строку?
Большое спасибо заранее!