Подсчитываем частоту слов в тексте с Python и модулем re

Подсчитываем частоту слов в тексте с Python и модулем re

Подсчитываем частоту слов в тексте с Python и модулем re

Здравствуйте! Наверняка, многие сталкивались с проблемой определения содержания массивного текста, при невозможности прочесть его от начала и до конца.
В таком случае, на помощь может прийти анализ частоты ключевых слов. И кстати, с помощью этого же подхода возможен массовый поиcк содержимого по файлам, о чем подробнее рассказывается в видеокурсе Написание лайфхаков на Python.
В сегодняшней статье мы рассмотрим скрипт для подсчета частоты слов в тексте посредством Python и встроенных модулей re и collections.





import re

from collections import Counter



def word_frequency(text):

    # Очистка текста от знаков препинания и приведение к нижнему регистру

    cleaned_text = re.sub(r'[^ws]', '', text).lower()

    # Разделение текста на слова

    words = cleaned_text.split()

    # Фильтрация слов длиной менее трех символов

    words = [word for word in words if len(word) >= 3]

    # Подсчет частоты слов и их сортировка

    word_count = Counter(words)

    sorted_words = word_count.most_common()

    return sorted_words



# Пример текста для анализа

with open('words.txt', 'r', encoding='utf-8') as f:

    input_text = f.read()



# Обработка текста и вывод результатов

result = word_frequency(input_text)

for word, frequency in result:

    print(f'Word: {word}, Frequency: {frequency}')





Данный скрипт производит подсчет всех слов в тексте, включая и стоп слова. Теперь подсчитав количество и частоту слов мы можем приближенно понять, что содержится в тексте.


Вариант применения. Допустим, у нас есть текстовый файл, содержащий отзывы о продукте или услуге. Мы загружаем этот текст в программу, и она проводит анализ. Мы получаем список слов, упорядоченных по их частоте встречаемости. Это позволяет нам легко выявить ключевые темы или понять, какие аспекты нашего продукта/услуги обсуждаются чаще всего.
Таким образом, мы создали простейший анализатор текста на основе частоты упомянутых в нем слов, при помощи Python и регулярных выражений.

Источник

НЕТ КОММЕНТАРИЕВ

Оставить комментарий