CommencezCommencez gratuitement

Diagramme en boîtes

Une façon simple de comparer plusieurs distributions est d'utiliser un diagramme en boîtes. Le code ci-dessous vous aidera à construire plusieurs diagrammes en boîtes pour obtenir un visuel compact.

Dans cet exercice, l'objet all_book_polarity est déjà chargé. Le tableau de données contient deux colonnes, book et polarity. Il regroupe tous les livres avec la fonction polarity() du paquet qdap appliquée. Voici les 3 premières lignes de ce grand objet.

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

Cet exercice présente tapply(), qui vous permet d'appliquer des fonctions sur un tableau irrégulier. Vous fournissez un vecteur de valeurs puis un vecteur de facteurs. Pour chaque combinaison facteur–valeur, le troisième paramètre, une fonction comme min(), est appliquée. Par exemple, voici du code utilisant tapply() sur deux vecteurs.

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

Le résultat est un tableau où Group1 a une valeur de 2 (1+1) et Group2 a une valeur de 4 (2+2).

Cette activité fait partie du cours

Analyse de sentiment en R

Voir le cours

Instructions de l’exercice

  • Puisqu'il est déjà chargé, examinez all_book_polarity avec str().
  • En utilisant tapply(), passez all_book_polarity$polarity, all_book_polarity$book et la fonction summary(). Cela imprimera les statistiques sommaires des 4 livres en termes de leurs scores de polarity(). Vous devriez vous attendre à ce que Oz et Huck Finn aient des moyennes plus élevées qu'Agamemnon ou Moby Dick. Portez une attention particulière à la médiane.
  • Créez un diagramme en boîtes avec ggplot() en lui passant all_book_polarity.
    • Les paramètres esthétiques doivent être aes(x = book, y = polarity).
    • À l'aide d'un +, ajoutez geom_boxplot() avec col = "darkred". Portez une attention particulière à la ligne foncée au centre de chaque boîte qui représente la médiane.
    • Ajoutez ensuite une autre couche appelée geom_jitter() pour ajouter des points pour chacun des mots.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Examine
___

# Summary by document
___

# Box plot
ggplot(___, aes(x = ___, y = ___)) +
  ___(fill = c("#bada55", "#F00B42", "#F001ED", "#BA6E15"), col = "___") +
  ___(position = position_jitter(width = 0.1, height = 0), alpha = 0.02) +
  theme_gdocs() +
  ggtitle("Book Polarity")
Modifier et exécuter le code