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>Instructions de l’exercice
- Examinez le data frame
conversation. Notez les modulateurs de valence comme « never » dans la colonne text. - Appliquez
polarity()à la colonnetextdeconversationpour 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 deconversation. - La variable de texte est
textet la variable de regroupement eststudent.
- Appelez à nouveau
- Pour voir les résultats au niveau des étudiants, utilisez
scores()surstudent_pol. - La fonction
counts()appliquée àstudent_polaffichera 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_polpeut être représenté avecplot().
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
___