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 Parameterbyan, der einemcmit 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>Übungsanweisungen
Wir haben ag_txt mit den ersten 100 Zeilen aus Agamemnon geladen sowie ag_tidy als tidy Version.
- Nutze zum Vergleich
polarity()aufag_txt. - Hole dir das
"bing"-Lexikon, indem du diesen String anget_sentiments()übergibst. - Führe ein
inner_join()mitag_tidyundbingaus.- Die Wortspalten heißen in
ag_tidy"term"und im Lexikon"word", also gib dasby-Argument an. - Nenne das neue Objekt
ag_bing_words.
- Die Wortspalten heißen in
- Gib
ag_bing_wordsaus und schau dir einige der enthaltenen Wörter an. - Übergib
ag_bing_wordsper Pipe-Operator %>% ancount()vonsentiment. Vergleiche denpolarity()-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 %>%
___(___)