Code Monkey home page Code Monkey logo

text_stat_analysis's Introduction

Статистический анализ текстов для курса "Автоматическая обработка текста" на ФКН НИУ ВШЭ.

Пузырев Дмитрий Александрович

Репозиторий содержит два файла с кодом:

stat_analysis.py: класс с методами подсчета статистик. Включает в себя следующие функции:

  1. get_symbols_amount — подсчет числа символов в тексте, с пробелами, без пробелов и без знаков препинания (то есть все буквенные символы)
  2. get_sentences_amount — подсчет числа предложений в тексте, среднего числа непробельных и буквенных символов на предложение
  3. get_token_amount — подсчет числа токенов, среднего числа токенов на предложение
  4. get_words_amount — подсчет числа словоупотреблений, среднего числа словоупотреблений на предложение
  5. get_mean_word_length — подсчет средней длины словоупотребления в тексте
  6. get_mean_word_length — подсчет числа уникальных словоформ в тексте
  7. get_word_frequency — вывод заданного числа наиболее частотных словоформ текста с частотами и отн. частотам, прорисовка круговой диаграммы частот
  8. get_word_pos_frequency — подсчет частот частей речи по словоформам, прорисовка диаграммы (здесь и в дальнейшем лейблы граммем по стандарту opencorpora http://opencorpora.org/dict.php?act=gram)
  9. get_noun_cases_frequency, get_adj_cases_frequency — подсчет частот падежей существительных и прилагательных, прорисовка диаграммы (opencorpora)
  10. get_noun_numbers_frequency, get_adj_numbers_frequency, get_verb_numbers_frequency — подсчет частот чисел существительных, прилагательных, глаголов, прорисовка диаграммы (opencorpora)
  11. get_verb_pers_frequency — подсчет частот лицевых форм глагола, прорисовка диаграммы (opencorpora)
  12. get_lemms_amount — подсчет числа лемм в тексте
  13. get_richness — коэффициент лексического богатства текста
  14. get_lemm_frequency — вывод заданного числа наиболее частотных лемм текста с частотами и отн. частотам, прорисовка круговой диаграммы частот
  15. get_lemm_pos_frequency — подсчет частот частей речи по леммам, прорисовка диаграммы
  16. get_pos_lemm_frequencies — вывод заданного числа наиболее частотных лемм указанной по лейблу части речи, прорисовка диаграмм
  17. check_zipf_words, check_zipf_lemms — прорисовка графика зависимости отн. частоты словоформы/леммы от ее ранга; аппроксимация указанной зависимости законом Ципфа с C=относительнольной частоте самого распространённого слова
  18. draw_pie — служебная функция для прорисовки диаграмм
  19. write_log_to_path — служебная функция для записи всех запрошенных статистик в указанный текстовый файл

Класс инициализируется созданием метода StatAnalysis(). Для инициализации необходим путь к текстовому файлу (при инициализации класс сам его откроет). Опционально можно поставить флаг make_log на True, тогда вся статистика будет записана в одну строку.

Пример использования отражен в тестовом скрипте test.py. Его можно запустить из командной строки следующим образом:

python test.py <путь к тексту> <True или False в зависимости от желания получить текстовый файл с результатами> --log <путь к логу опционально>

Все возможные статистики будут выведены на экран.

В репозитории содержаться результаты полного анализа второй главы "Алисы в стране чудес" Льюиса Кэролла и второй главы "Generation П" Виктора Пелевина.

text_stat_analysis's People

Watchers

James Cloos avatar Dmitri avatar

Forkers

w1nse

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.