CommencerCommencez gratuitement

Des chansons qui rendent heureux !

Bien sûr, des mots simplement positifs et négatifs ne suffisent pas. Dans cet exercice, vous allez découvrir les modulateurs de valence, qui renseignent sur l'intention émotionnelle de l'auteur. Jusqu'ici, vous avez appliqué polarity() à du texte sans modulateurs de valence. Dans cet exemple, vous verrez en action des mots d'amplification et de négation.

Rappelez-vous qu'un mot d'amplification ajoute 0,8 à un mot positif dans polarity(), ce qui porte le score positif à 1,8. Pour les mots négatifs, 0,8 est soustrait, ce qui donne un total de -1,8. Le score est ensuite divisé par la racine carrée du nombre total de mots.

Considérez l'exemple suivant de Frank Sinatra :

  • "It was a very good year"

« good » vaut 1 et « very » ajoute 0,8. Ainsi, 1,8/sqrt(6) donne une polarité de 0,73.

Un mot de négation comme « not » inverse le score de subjectivité. Considérez l'exemple suivant de Bobby McFerrin :

  • "Don't worry Be Happy"

« worry » vaut désormais 1 en raison de la négation « don't ». En ajoutant « happy », +1, on obtient 2. Avec 4 mots au total, 2 / sqrt(4) correspond à un score de polarité de 1.

Cet exercice fait partie du cours

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

Instructions de l’exercice

  • Examinez le data frame conversation. Notez les modulateurs de valence comme « never » dans la colonne text.
  • Appliquez polarity() à la colonne text de conversation pour calculer la polarité de toute la conversation.
  • Calculez les scores de polarité par étudiant et affectez le résultat à student_pol.
    • Appelez à nouveau polarity(), cette fois en passant deux colonnes de conversation.
    • La variable de texte est text et la variable de regroupement est student.
  • Pour voir les résultats au niveau des étudiants, utilisez scores() sur student_pol.
  • La fonction counts() appliquée à student_pol affichera la polarité au niveau des phrases pour l'ensemble du data frame ainsi que les mots du lexique identifiés.
  • L'objet de polarité student_pol peut être représenté avec plot().

Exercice interactif pratique

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

# Examine conversation
___

# Polarity - All
___

# Polarity - Grouped
student_pol <- conversation %$%
  ___(___, ___)

# Student results
___

# Sentence by sentence
___

# qdap plot
___
Modifier et exécuter le code