Aan de slagGa gratis aan de slag

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

Cursus bekijken

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 het afinn-lexicon.
  • Vat de resultaten samen door de kolom score op 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))
}
Code bewerken en uitvoeren