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
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 opm_dick_tidyenbing.- Koppel, net als eerder, de kolom
"term"inm_dick_tidyaan de kolom"word"in het lexicon. - Noem het nieuwe object
moby_lex_words.
- Koppel, net als eerder, de kolom
- Maak een kolom
index, gelijk aanas.numeric()toegepast opdocument. Dit doe je binnenmutate()in de tidyverse. - Maak
moby_countdoormoby_lex_wordsdoor te geven aancount()metsentiment, index. - Genereer
moby_widedoormoby_countdoor te pipen naarpivot_wider()waarbijnames_fromgelijk is aan de kolomsentiment,values_fromgelijk is aan de kolomnen waarden worden aangevuld metvalues_fill = 0. arrangeis de volgende pipe waarmee je de rijen sorteert opindex-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