Написать отфильтрованную функцию WordCount с Pyspark - PullRequest
0 голосов
/ 15 апреля 2020
text_file = sc.textFile("data.txt")
counts = text_file.flatMap(lambda line: line.split(" ")) \
             .filter(lambda word: re.sub(r"\p{P}+", word) in word) \
             .map(lambda word: (word, 1)) \
             .reduceByKey(lambda a, b: a + b)
print(counts.collect())

У меня есть такой код подсчета слов, и я хочу отфильтровать знаки препинания, но когда я добавляю функцию filter () , при запуске collect () * возникает ошибка Функция 1005 *. Без фильтра () все в порядке, но список слов будет содержать такие слова, как [('primaries.', 1), ('1946)', 1), ('Let's', 2) ...] и не так чистить: (

...