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

Connected

Вправа

Ящик з вусами (box plot)

Зручний спосіб порівняти кілька розподілів — це «ящик з вусами» (box plot). Цей код допоможе вам побудувати кілька таких діаграм для компактної візуалізації.

У цій вправі об'єкт all_book_polarity уже завантажено. Датафрейм містить два стовпці: book і polarity. У ньому зібрано всі книжки з застосованою функцією polarity() з пакета qdap. Нижче наведено перші 3 рядки великого об'єкта.

book polarity
14 huck 0.2773501
22 huck 0.2581989
26 huck -0.5773503

У цій вправі ми познайомимося з tapply(), яка дає змогу застосовувати функції до «рваних» масивів. Ви передаєте вектор значень і далі вектор факторів. Для кожної комбінації фактор–значення застосовується третій параметр — функція, наприклад min(). Ось приклад коду з використанням tapply() для двох векторів.

f1 <- as.factor(c("Group1", "Group2", "Group1", "Group2"))
stat1 <- c(1, 2, 1, 2)
tapply(stat1, f1, sum)

Результатом є масив, де Group1 має значення 2 (1+1), а Group2 — значення 4 (2+2).

Інструкції

100 XP
  • Оскільки об'єкт уже завантажено, перегляньте all_book_polarity за допомогою str().
  • Використовуючи tapply(), передайте all_book_polarity$polarity, all_book_polarity$book і функцію summary(). Це виведе підсумкові статистики для 4 книжок за їхніми оцінками polarity(). Очікуйте, що Oz і Huck Finn матимуть вищі середні значення, ніж Agamemnon або Moby Dick. Зверніть особливу увагу на медіану.
  • Створіть «ящик з вусами» за допомогою ggplot(), передавши all_book_polarity.
    • В естетиці вкажіть aes(x = book, y = polarity).
    • За допомогою + додайте geom_boxplot() з col = "darkred". Зверніть увагу на темну лінію в кожному прямокутнику, що позначає медіану.
    • Далі додайте ще один шар — geom_jitter() — щоб показати точки для кожного слова.