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) ...] и не так чистить: (