CommencerCommencez gratuitement

Polarité tidy avec Bing : compter et pivoter la baleine blanche

Dans cet exercice, vous allez appliquer un autre inner_join() en utilisant le lexique "bing".

Vous manipulerez ensuite les résultats avec count() de dplyr et pivot_wider() de tidyr pour analyser le texte.

La fonction pivot_wider() répartit les données sur plusieurs colonnes. Dans notre cas, le sentiment et les valeurs n correspondantes représentent la fréquence des termes positifs ou négatifs pour chaque ligne. L'utilisation de pivot_wider() transforme les données pour que chaque ligne comporte désormais des valeurs positives et négatives, même si elles valent 0.

Cet exercice fait partie du cours

<cours>Analyse de sentiments en R</cours>
Voir le cours

Instructions de l’exercice

Dans cet exercice, votre session R contient m_dick_tidy, qui renferme le livre Moby Dick, et bing, qui contient le lexique similaire à l'exercice précédent.

  • Effectuez un inner_join() entre m_dick_tidy et bing.
    • Comme précédemment, faites la jointure entre la colonne "term" de m_dick_tidy et la colonne "word" du lexique.
    • Appelez le nouvel objet moby_lex_words.
  • Créez une colonne index, égale à as.numeric() appliqué à document. Faites-le au sein de mutate() dans le tidyverse.
  • Créez moby_count en transmettant moby_lex_words à count() en passant sentiment, index.
  • Générez moby_wide en chaînant moby_count à pivot_wider()names_from correspond à la colonne sentiment, values_from à la colonne n et les valeurs manquantes sont remplies avec values_fill = 0.
  • arrange est le pipe suivant pour ordonner les lignes selon les valeurs de index

Exercice interactif pratique

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

# Inner join
moby_lex_words <- inner_join(___, ___, by = c("___" = "___"))

moby_lex_words <- moby_lex_words %>%
  # Set index to numeric document
  mutate(___ = as.numeric(___))

moby_count <- moby_lex_words %>%
  # Count by sentiment, index
  ___(___, ___)

# Examine the counts
moby_count

moby_wide <- moby_count %>%
  # Pivot the sentiments
  pivot_wider(names_from = ___, values_from = ___, values_fill = ___) %>% 
  arrange(index)

# Review the pivoted data
moby_wide
Modifier et exécuter le code