Aan de slagGa gratis aan de slag

Bing nette polariteit: tel en pivot de witte walvis

In deze oefening pas je opnieuw een inner_join() toe met het "bing"-lexicon.

Vervolgens bewerk je de resultaten met zowel count() uit dplyr als pivot_wider() uit tidyr om meer over de tekst te leren.

De functie pivot_wider() spreidt gegevens uit over meerdere kolommen. In dit geval geven de sentimenten en de bijbehorende n-waarden de frequentie weer van positieve of negatieve termen per regel. Met pivot_wider() verandert de data zodat elke rij nu positieve en negatieve waarden heeft, zelfs als dat 0 is.

Deze oefening maakt deel uit van de cursus

Sentimentanalyse in R

Cursus bekijken

Oefeninstructies

In deze oefening heeft je R-sessie m_dick_tidy, met het boek Moby Dick, en bing, met het lexicon vergelijkbaar met de vorige oefening.

  • Voer een inner_join() uit op m_dick_tidy en bing.
    • Koppel, net als eerder, de kolom "term" in m_dick_tidy aan de kolom "word" in het lexicon.
    • Noem het nieuwe object moby_lex_words.
  • Maak een kolom index, gelijk aan as.numeric() toegepast op document. Dit doe je binnen mutate() in de tidyverse.
  • Maak moby_count door moby_lex_words door te geven aan count() met sentiment, index.
  • Genereer moby_wide door moby_count door te pipen naar pivot_wider() waarbij names_from gelijk is aan de kolom sentiment, values_from gelijk is aan de kolom n en waarden worden aangevuld met values_fill = 0.
  • arrange is de volgende pipe waarmee je de rijen sorteert op index-waarden

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Inner join
moby_lex_words <- inner_join(___, ___, by = c("___" = "___"))

moby_lex_words <- moby_lex_words %>%
  # Set index to numeric document
  mutate(___ = as.numeric(___))

moby_count <- moby_lex_words %>%
  # Count by sentiment, index
  ___(___, ___)

# Examine the counts
moby_count

moby_wide <- moby_count %>%
  # Pivot the sentiments
  pivot_wider(names_from = ___, values_from = ___, values_fill = ___) %>% 
  arrange(index)

# Review the pivoted data
moby_wide
Code bewerken en uitvoeren