Sentimentscores
In het boek Animal Farm zijn drie hoofdvarkens verantwoordelijk voor de gebeurtenissen: Napoleon, Snowball en Squealer. Door het hele boek verspreiden ze ideeën over opstand en moedigen ze de andere dieren aan om de boerderij over te nemen van Mr. Jones, de eigenaar.
Gebruik de zinnen waarin elk varken wordt genoemd om te bepalen welk personage de meest negatieve sentimenten aan zich gekoppeld heeft. De sentences-tibble bevat een tibble met de zinnen uit het boek Animal Farm.
Deze oefening maakt deel uit van de cursus
Introductie tot Natural Language Processing in R
Oefeninstructies
- Gebruik de functie
grepl()om te filteren op zinnen waarin alleen de naam van het varken voorkomt. - Voeg met een
inner_join()de sentimentscore toe uit hetafinn-lexicon. - Vat de resultaten samen door de kolom
scoreop te tellen.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Print the overall sentiment associated with each pig's sentences
for(name in c("napoleon", "snowball", "squealer")) {
# Filter to the sentences mentioning the pig
pig_sentences <- sentences[___(___, sentences$sentence), ]
# Tokenize the text
napoleon_tokens <- pig_sentences %>%
unnest_tokens(output = "word", token = "words", input = sentence) %>%
anti_join(stop_words)
# Use afinn to find the overall sentiment score
result <- napoleon_tokens %>%
inner_join(___("___")) %>%
summarise(sentiment = ___(___))
# Print the result
print(paste0(name, ": ", result$sentiment))
}