-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
Startpunkt ist das AfD-Wahlprogramm im btw2021-Paket:
remotes::install_github("PolMine/btw2021")
library(btw2021)
length(afd2021)Wir definieren einen Suchterm ...
query <- "multikult.*"tokenisieren das Wahlprogramm ...
w <- tokenizers::tokenize_words(afd2021, strip_punct = FALSE)und bringen das in ein tabellarisches Datenformat
df <- data.frame(word = unlist(w))
df[["pos_id"]] <- 1:nrow(df)Wir suchen die Treffer für unseren Suchterm
matches <- grep(query, df$word)und ziehen die Wortkontexte aus der Tabelle
contexts <- list()
for (i in 1:length(matches)){
contexts[[i]] <- df[(matches[i] - 10):(matches[i] + 10),]
contexts[[i]][["match_no"]] <- i
}
df_sub <- do.call(rbind, contexts)Nun weisen wir den Worten im Wortkontext die SentiWS-Gewichte zu. Dafür nutzen wir einen Ausschnitt aus der SentiWS-Tabelle.
senti_ws_min <- senti_ws[, c("word", "weight")]
senti_ws_min$word <- tolower(senti_ws_min$word)Das verbinden wir jetzt.
pimped <- left_join(df_sub, senti_ws_min, by = "word")Der einfachste Ansatz ist nun, die Wortgewichte aufzusummieren und das Ergebnis durch Division der Worte in der Tabelle zu normalisieren.
sum(pimped$weight, na.rm = TRUE) / nrow(pimped)Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels