Skip to content
Liana2707 edited this page Jun 7, 2022 · 1 revision

Statistics(#20)


Статистика делится на две группы: статистика по количеству слов и статистика по секциям.

  1. Секции: Составляется новая(краткая) PDFStructure. Она не учитывает подсекции. Для каждой секции создаётся статистика, включающая размер работы, размер секций в страницах, размер секций в процентах.
  2. Слова:
  1. стоп-слова считываются из текстового файла.
  2. создаются счётчик слов и HashMap<String, Int>, хранящий слово, и то, как часто оно встречается.
  3. Далее пробегаются все слова в тексте: 1: в случае если слово является второй половиной слова(то есть слово получено после переноса строки), то мы его пропускаем 2: если слово не пусто, то проверяем последний символ. Если это '-', то считаем, что происходит перенос слова с одной строки на другую, склеиваем два слова. 3: удаляются все цифры и спец.символы. 4: если слово не содержится в словаре стоп-слов, и его длина больше 1, то переводим первый символ в верхний регистр. 5: далее проверяем, есть ли слово в нашем HashMap<String, Int>. Слова условно считаются равными, если совпадают 3/4 длины слов. Если слова равны, то увеличивается счётчик конкретного слова, если нет, то слово добавляется в HashMap. В обоих случаях увеличивается общий счётчик.
  4. Слова фильтруются по частоте использования.
  5. Возвращаются общий счётчик и отфильтрованные слова.

Clone this wiki locally