LoslegenKostenlos loslegen

Kampf im Käfig! Amazon vs. Google – Pro-Reviews

In positiven Bewertungen zu Amazon tauchen anscheinend Bigramme wie „good benefits“ auf, während sich negative Bewertungen auf Bigramme wie „workload“ sowie Probleme mit der „work-life balance“ konzentrieren.

Im Gegensatz dazu erwähnen positive Google-Bewertungen unter anderem „great food“, „perks“, „smart people“ und „fun culture“. Negative Google-Bewertungen sprechen über „politics“, „getting big“, „bureaucracy“ und „middle management“.

Du entscheidest dich, ein Pyramidendiagramm zu erstellen, das die positiven Bewertungen von Amazon und Google gegenüberstellt, damit du die Unterschiede zwischen gemeinsam vorkommenden Bigrammen vergleichen kannst.
Wir haben einen Data Frame all_tdm_df vorab geladen, der aus terms sowie den entsprechenden Bigramm-Häufigkeiten AmazonPro und GooglePro besteht. Mit diesem Data Frame wirst du die Top 5 Bigramme identifizieren, die in beiden Korpora vorkommen.

Diese Übung ist Teil des Kurses

Text Mining mit Bag-of-Words in R

Kurs anzeigen

Anleitung zur Übung

  • Erzeuge common_words aus all_tdm_df mit dplyr-Funktionen.
    • filter() auf der Spalte AmazonPro für Nicht-Null-Werte.
    • Ebenso die Spalte GooglePro für Nicht-Null-Werte filtern.
    • Danach per mutate() eine neue Spalte diff erstellen, die die abs (absolute) Differenz zwischen den Termfrequenz-Spalten ist.
  • Leite common_words per Pipe an slice_max weiter, um top5_df zu erzeugen, und verweise dabei auf die Spalte diff und die Top-5 Werte. Das Ergebnis wird zur Überprüfung in deiner Konsole ausgegeben.
  • Erzeuge ein pyramid.plot, übergib erst top5_df$AmazonPro, dann top5_df$GooglePro und füge schließlich Labels mit top5_df$terms hinzu.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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)
Code bearbeiten und ausführen