Canzoni felici!
Ovviamente, solo parole positive e negative non bastano. In questo esercizio imparerai i valence shifters, che rivelano l’intento emotivo dell’autore. In precedenza hai applicato polarity() a testo senza valence shifters. In questo esempio vedrai all’opera parole di amplificazione e negazione.
Ricorda che una parola di amplificazione aggiunge 0.8 a una parola positiva in polarity(), quindi il punteggio positivo diventa 1.8. Per le parole negative si sottrae 0.8, quindi il totale diventa -1.8. Poi il punteggio viene diviso per la radice quadrata del numero totale di parole.
Considera il seguente esempio di Frank Sinatra:
- "It was a very good year"
"Good" vale 1 e "very" aggiunge altri 0.8. Quindi, 1.8/sqrt(6) dà come risultato una polarità di 0.73.
Una parola di negazione come "not" invertirà il punteggio di soggettività. Considera il seguente esempio di Bobby McFerrin:
- "Don't worry Be Happy"
"worry" ora vale 1 grazie alla negazione "don't". Aggiungendo "happy", +1, si ottiene 2. Con 4 parole in totale, 2 / sqrt(4) equivale a un punteggio di polarità pari a 1.
Questo esercizio fa parte del corso
Sentiment Analysis in R
Istruzioni dell'esercizio
- Esamina il data frame della conversazione,
conversation. Nota i valence shifters come "never" nella colonna text. - Applica
polarity()alla colonnatextdiconversationper calcolare la polarità dell’intera conversazione. - Calcola i punteggi di polarità per studente, assegnando il risultato a
student_pol.- Chiama di nuovo
polarity(), questa volta passando due colonne diconversation. - La variabile di testo è
texte la variabile di raggruppamento èstudent.
- Chiama di nuovo
- Per vedere i risultati a livello di studente, usa
scores()sustudent_pol. - La funzione
counts()applicata astudent_polstamperà la polarità a livello di frase per l’intero data frame insieme alle parole del lessico identificate. - L’oggetto di polarità,
student_pol, può essere rappresentato graficamente conplot().
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Examine conversation
___
# Polarity - All
___
# Polarity - Grouped
student_pol <- conversation %$%
___(___, ___)
# Student results
___
# Sentence by sentence
___
# qdap plot
___