Стемминг текстов на естественном языке

В прошлый раз я рассказывал про такие элементы препроцессинга текстовых данных, как приведение к одному регистру, удаление стоп-слов и пунктуации. Второй этап препроцессинга подобных данных, необходимый в некоторых задачах — это стеммизация, приведение слов к своей основной форме. Например, «работодателя» – «работодатель».

Существует несколько…

Препроцессинг текстов на естественном языке

При работе с текстами, написанными на естественном языке, один из основных этапов — подготовка данных к анализу. В частности, уделение стоп-слов, приведение слов к одному регистру и так далее. Для таких задач я использую функции пакетов stringr и tm.

Один из первых шагов — это приведение текстов к одному регистру с помощью функции tolower():

Добавление аннотаций на графики ggplot

Иногда требуется добавить на график какую-нибудь текстовую аннотацию - пояснение или же значение конкретной точки. С определенной легкостью это можно для графиков, построенных с помощью функции annotate() пакета ggplot2. Приведу пример аннотаций на гистограмме частот значений скошенного t-распределения (которое можно использовать для моделирования времени реакции в психологических…

Подсчет пересекающихся временных интервалов

Одна из моих недавних задач - подсчитать количество пересеченний сессий пользователя с другими пользователями. Вроде бы тривиальная задача на count overlaps, однако за решением пришлось обращаться аж к пакетам для Bioconductor. Простейший код, начиная с установки соответствующего пакета, выглядит следующим образом:

source("http://bioconductor.org/biocLite.R")
biocLite("IRanges")
library(IRanges)

Далее…