НачатьНачать бесплатно

Создание аккуратного текстового тиббла!

Поскольку вы уже знакомы с принципами tidy data, этот код поможет вам организовать данные в тиббл и работать с ними в экосистеме tidyverse!

Ранее вы узнали, что применение tidy() к объекту TermDocumentMatrix() преобразует TDM в тиббл. В этом упражнении вы создадите данные о словах непосредственно из столбца отзывов comments.

Сначала используйте unnest_tokens(), чтобы привести текст к нижнему регистру и разбить отзывы на отдельные слова.

Иногда бывает полезно сохранить исходный порядок слов внутри каждой группы корпуса. Для этого используйте mutate(). Внутри mutate() применяйте seq_along(), чтобы создать последовательность чисел от 1 до длины объекта — это позволит зафиксировать порядок слов в том виде, в каком они были записаны.

В пакете tm для удаления стоп-слов используется removeWords(). В tidyverse нужно сначала загрузить лексикон стоп-слов, а затем применить anti_join() между аккуратным текстовым фреймом данных и стоп-словами.

Это упражнение является частью курса

Анализ тональности в R

Посмотреть курс

Инструкции к упражнению

  • Создайте tidy_reviews, передав исходный объект отзывов bos_reviews через оператор (%>%) в функцию unnest_tokens(). Укажите новое имя столбца word и объявите столбец comments. Помните, что в tidyverse не нужны знак $ или кавычки.
  • Создайте новую переменную в стиле tidy! Перезапишите tidy_reviews, передав tidy_reviews через %>% в group_by со столбцом id. Затем снова передайте через %>% в mutate(). Внутри mutate создайте новую переменную original_word_order, равную seq_along(word).
  • Выведите тиббл tidy_reviews на экран.
  • Загрузите готовый лексикон стоп-слов "SMART" в сессию R с помощью data("stop_words").
  • Перезапишите tidy_reviews, передав исходный tidy_reviews через %>% в anti_join(). Внутри anti_join() передайте готовый лексикон stop_words.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Vector to tibble
tidy_reviews <- bos_reviews %>% 
  ___(___, ___)

# Group by and mutate
tidy_reviews <- tidy_reviews %>% 
  ___(___) %>% 
  ___(original_word_order = ___(___))

# Quick review
___

# Load stopwords
___

# Perform anti-join
tidy_reviews_without_stopwords <- tidy_reviews %>% 
  ___(___)
Редактировать и запускать код