Руководство

Как посчитать частотность слов в тексте и вывести самые частые слова

Передайте строку, настройте стоп-слова, минимальную длину и лимит списка, затем сравните частоты сохранённых терминов со сводными показателями. Для кириллического текста заранее учтите, что его буквы заменяются пробелами при нормализации.

Инструмент Частотный анализ текста

Назначение и подготовка текста

Инструмент подсчитывает сохранённые словесные токены в переданном тексте и показывает термины с наибольшей частотой. Такой разбор подходит для проверки повторов, предварительного сравнения двух фрагментов и поиска часто встречающейся лексики. Число отображаемых позиций можно ограничить, а фильтрацию стоп-слов и минимальную длину токена настроить отдельно.

Перед анализом проверьте состав исходных данных. Текст переводится в нижний регистр, после чего символы, не являющиеся ASCII-буквами, пробельными знаками или апострофами, заменяются пробелами. Поэтому кириллица, цифры и большинство знаков препинания не сохраняются внутри анализируемых токенов. По умолчанию стоп-слова исключаются, минимальная длина составляет 3 символа, а лимит списка равен 30 терминам.

Эти правила особенно важны при работе с русскоязычным материалом: привычный текст может не дать ожидаемых слов в результате. Если задача связана с англоязычной лексикой и допустимыми ASCII-символами, результат проще сопоставить с исходными терминами после учёта фильтров.

Порядок действий

  1. Подготовьте текстовое значение в виде строки и передайте его для обработки. Для содержательного результата используйте фрагмент с обычными словами, а не набор одних цифр или знаков. Пустое или не переданное значение тоже обрабатывается, но тогда список записей будет пустым, а оба итоговых счётчика покажут ноль.

  2. Уточните правила нормализации перед запуском. Регистр не сохраняется, неподходящие символы превращаются в пробелы, а оставшаяся последовательность делится по пробельным символам. Апостроф относится к допустимым символам, поэтому он может остаться частью токена.

  3. Решите, нужны ли стоп-слова в подсчёте. При включённой фильтрации встроенный набор таких слов исключается после проверки минимальной длины. Отключайте фильтр только тогда, когда служебная лексика нужна для конкретного сравнения.

  4. Укажите минимальную длину токена. Значение преобразуется в целое число и ограничивается снизу единицей; ложное значение заменяется числом 3. Чтобы учитывать короткие элементы, задайте подходящее положительное значение, а не нулевую границу.

  5. Настройте число отображаемых терминов. Ложное значение даёт лимит 30, а другое значение преобразуется в целое число и приводится к диапазону от 5 до 100 включительно. Небольшой лимит сокращает список на экране, но не означает автоматического удаления остальных сохранённых терминов из подсчёта.

  6. Запустите обработку и просмотрите позиции в результате. Сохранённые термины идут по убыванию количества в пределах выбранного лимита, а рядом с каждым отображаемым термином указаны частота, процент и относительное значение полосы.

Интерпретация показателей

Начните чтение с двух сводных показателей: общего числа сохранённых токенов и количества различных сохранённых терминов. Первый показатель описывает объём после применённых правил, второй показывает размер получившегося словаря. Ни один из них не обязан совпадать с количеством элементов в исходной строке, если нормализация, длина или фильтр изменили состав данных.

Частота показывает число сохранённых вхождений конкретного термина. Процент считается от общего количества сохранённых токенов и округляется до двух знаков после запятой. Относительная полоса округляется до одного знака, поэтому её удобно использовать для визуального сравнения строк, но не для обратного вычисления частоты.

При сравнении запусков сохраняйте одинаковые настройки: изменение фильтра стоп-слов или минимальной длины меняет набор retained-токенов, а другой лимит меняет видимый список. Лимит отображения ограничивает число показанных позиций, поэтому короткий список не доказывает отсутствие других сохранённых терминов. Пустой результат для кириллического текста сначала проверяйте по правилу нормализации. Если непустое значение имеет неподходящий тип либо истинный параметр нельзя преобразовать в целое число, обработка может завершиться ошибкой.

Практический пример

Редактор проверяет повторяемость англоязычных терминов в коротком фрагменте перед публикацией, чтобы увидеть порядок лидирующих позиций.

Передайте строку "apple apple pear", отключите фильтрацию стоп-слов, задайте минимальную длину 3 и лимит 5, затем сравните порядок первых строк и сводные показатели. Для этого ввода из 3 сохранённых токенов самым частым будет apple с 2 вхождениями, а pear - с 1. После нормализации повторяющиеся допустимые токены учитываются отдельно.

Появится список сохранённых терминов по убыванию частоты с частотой, процентом и относительной полосой, а также общее число сохранённых токенов и количество различных терминов.

Ограничения

  • Показатели описывают не исходную строку целиком: неподходящие символы заменяются, стоп-слова и короткие токены могут исключаться, а видимый список ограничивается нормализованным лимитом.

Частые ошибки

  • Ожидание русских слов в списке и установка нулевой минимальной длины приводят к неверной настройке задачи. Учитывайте замену кириллицы пробелами и задавайте положительное целое значение длины, если требуется другой порог.

Частые вопросы

Можно ли анализировать русский текст?

Результат возможен только для токенов, которые проходят действующее правило нормализации. Кириллические символы заменяются пробелами, поэтому русские слова не сохраняются как такие токены; перед запуском проверьте состав текста.

Что будет при пустом тексте?

При пустом или пропущенном тексте операция завершается успешно. В ответе не будет словесных записей, а общее число сохранённых токенов и число различных терминов будут равны нулю независимо от обычного лимита списка.

Какой лимит терминов можно задать?

При ложном значении применяется лимит 30. Иное значение преобразуется в целое число, после чего его приводят к диапазону от 5 до 100 включительно, поэтому запрос меньшего или большего размера нормализуется.

Инструмент

Частотный анализ текста