Мои данные - это темы разговоров с веб-форума. Я создал функцию для очистки данных от стоп-слов, знаков препинания и тому подобного. Затем я создал цикл для очистки всех сообщений, которые были в моем CSV-файле, и поместил их в список. Потом я сделал подсчет слов. Моя проблема в том, что список содержит фразы Unicode, а не отдельные слова. Как я могу разделить фразы, чтобы они были отдельными словами, которые я мог сосчитать. Вот мой код ниже:
def post_to_words(raw_post):
HTML_text = BeautifulSoup(raw_post).get_text()
letters_only = re.sub("[^a-zA-Z]", " ", HTML_text)
words = letters_only.lower().split()
stops = set(stopwords.words("english"))
meaningful_words = [w for w in words if not w in stops]
return( " ".join(meaningful_words))
clean_Post_Text = post_to_words(fiance_forum["Post_Text"][0])
clean_Post_Text_split = clean_Post_Text.lower().split()
num_Post_Text = fiance_forum["Post_Text"].size
clean_posts_list = []
for i in range(0, num_Post_Text):
clean_posts_list.append( post_to_words( fiance_forum["Post_Text"][i]))
from collections import Counter
counts = Counter(clean_posts_list)
print(counts)
Мой вывод выглядит следующим образом: u'пожалуйста, следуйте инструкциям, обратите внимание на перемещение получателя':1 Я хочу, чтобы это выглядело так:
пожалуйста: 1
следовать: 1
инструкции: 1
и так далее.... Большое спасибо!