LoslegenKostenlos starten

Bing tidy polarity: Einfaches Beispiel

Jetzt, da du die Grundlagen eines Inner Join verstanden hast, wenden wir das auf das "Bing"-Lexikon an. Denk daran, dass die Funktion inner_join() aus dplyr stammt und das Lexikon-Objekt mit der get_sentiments()-Funktion aus tidytext abgerufen wird.

Das Bing-Lexikon kennzeichnet Wörter als positiv oder negativ. In den nächsten drei Übungen arbeitest du mit genau diesem Lexikon. Um get_sentiments() zu verwenden, übergib einen String wie "afinn", "bing", "nrc" oder "loughran", um das jeweilige Lexikon zu laden.

Der Inner-Join-Workflow:

  • Hol dir das passende Lexikon mit get_sentiments().
  • Übergib das Lexikon und die aufbereitete Texttabelle an inner_join().
  • Damit inner_join() funktioniert, muss es einen gemeinsamen Spaltennamen geben. Wenn keine gemeinsamen Spaltennamen existieren, gib sie mit einem zusätzlichen Parameter by an, der einem c mit Spaltennamen wie unten entspricht.
object <- x %>% 
    inner_join(y, by = c("column_from_x" = "column_from_y"))
  • Führe einige Aggregationen und Analysen auf der Schnittmenge der Tabellen durch.

Diese Übung ist Teil des Kurses

<Kurs>Sentimentanalyse in R</Kurs>
Kurs ansehen

Übungsanweisungen

Wir haben ag_txt mit den ersten 100 Zeilen aus Agamemnon geladen sowie ag_tidy als tidy Version.

  • Nutze zum Vergleich polarity() auf ag_txt.
  • Hole dir das "bing"-Lexikon, indem du diesen String an get_sentiments() übergibst.
  • Führe ein inner_join() mit ag_tidy und bing aus.
    • Die Wortspalten heißen in ag_tidy "term" und im Lexikon "word", also gib das by-Argument an.
    • Nenne das neue Objekt ag_bing_words.
  • Gib ag_bing_words aus und schau dir einige der enthaltenen Wörter an.
  • Übergib ag_bing_words per Pipe-Operator %>% an count() von sentiment. Vergleiche den polarity()-Score mit dem Verhältnis der Sentiment-Zählungen.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Qdap polarity
___

# Get Bing lexicon
bing <- get_sentiments("___")

# Join text to lexicon
ag_bing_words <- ___(___, ___, by = c("___" = "___"))

# Examine
ag_bing_words

# Get counts by sentiment
ag_bing_words %>%
  ___(___)
Code bearbeiten und ausführen