1. Learn
  2. /
  3. Courses
  4. /
  5. Аналіз тональності в R

Connected

Exercise

Емоційна інтрoспекція

У цій вправі ви підете далі за просте виділення позитивної та негативної лексики. Ви відфільтруєте текст за кожною з 8 емоцій із колеса емоцій Плучика, щоб побудувати візуалізацію. Такий підхід дає більше ясності у вживанні слів, адже ви прив'язуєте їх до конкретної емоції, а не лише до позитиву чи негативу.

Використовуючи лексикон суб'єктивності пакета tidytext — «nrc», ви виконаєте inner_join() зі своїм текстом. Лексикон «nrc» містить 8 емоцій, а також класи позитивних і негативних термінів. Тож після inner_join() вам потрібно буде відкинути позитивні й негативні слова. Один зі способів — використати заперечення ! і функцію grepl().

Функція «Global Regular Expression Print Logical» — grepl() — повертає True або False залежно від того, чи в кожному рядку знайдено відповідний шаблон. У цій вправі ви шукатимете positive АБО negative за допомогою оператора |, який означає «or», як показано нижче. Зазвичай ця вертикальна риска розташована над клавішею Enter на клавіатурі. Оскільки заперечення ! стоїть перед grepl(), значення T або F інвертується, тож "positive|negative" буде відкинуто, а не збережено.

Object <- tibble %>%
  filter(!grepl("positive|negative", column_name))

Далі застосуйте count() до знайдених слів і використайте pivot_wider(), щоб упорядкувати датафрейм.

comparison.cloud() потребує, щоб вхідні дані мали назви рядків, тому вам слід перетворити об'єкт на базовий data.frame, викликавши data.frame() з аргументом row.names.

Instructions 1/2

undefined XP
    1
    2
  • Виконайте inner_join() для moby і nrc.
  • За допомогою filter() із запереченням (!) і grepl() знайдіть "positive|negative". Шукати потрібно в стовпці sentiment.
  • Використайте count() для підрахунку за sentiment і term.
  • Перетворіть датафрейм за допомогою pivot_wider(), передавши names_from = sentiment, values_from = n і values_fill = 0.
  • Перетворіть на звичайний data frame за допомогою data.frame(), зробивши стовпець term назвами рядків.
  • Перегляньте moby_tidy за допомогою head().