Kooigevecht! Amazon vs. Google pro-reviews
In positieve reviews over Amazon duiken bigrammen op als "good benefits", terwijl negatieve reviews focussen op bigrammen rond "workload" en problemen met "work-life balance".
Daartegenover noemen positieve reviews over Google zaken als "great food", "perks", "smart people" en een "fun culture". In negatieve reviews over Google gaat het over "politics", "getting big", "bureaucracy" en "middle management".
Je besluit een piramidediagram te maken waarin je de positieve reviews van Amazon en Google naast elkaar zet, zodat je de verschillen tussen gedeelde bigrammen kunt vergelijken.
We hebben alvast een data frame all_tdm_df voor je geladen, met terms en de bijbehorende bigramfrequenties AmazonPro en GooglePro. Met dit data frame ga je de top 5 bigrammen vinden die beide corpora delen.
Deze oefening maakt deel uit van de cursus
Text mining met bag-of-words in R
Oefeninstructies
- Maak
common_wordsop basis vanall_tdm_dfmetdplyr-functies.filter()op de kolomAmazonProvoor niet-nulwaarden.- Filter op dezelfde manier de kolom
GoogleProvoor niet-nulwaarden. - Gebruik daarna
mutate()om een nieuwe kolomdifftoe te voegen met het absolute (abs) verschil tussen de frequentiekolommen.
- Pipe
common_wordsnaarslice_maxomtop5_dfte maken op basis van de kolomdiffmet de hoogste5waarden. Dit wordt in je console afgedrukt ter controle. - Maak een
pyramid.ploten geef achtereenvolgenstop5_df$AmazonPro,top5_df$GoogleProen als labelstop5_df$termsdoor.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Filter to words in common and create an absolute diff column
common_words <- all_tdm_df %>%
filter(
___ != 0,
___ != 0
) %>%
___(diff = ___(___ - ___))
# Extract top 5 common bigrams
(top5_df <- common_words %>% ___(___, n = ___))
# Create the pyramid plot
pyramid.plot(top5_df$___, top5_df$___,
labels = top5_df$___, gap = 12,
top.labels = c("Amzn", "Pro Words", "Goog"),
main = "Words in Common", unit = NULL)