这是我的第一个问题,我希望有人能帮忙,我真的不知道还能做些什么。
这是关于网站的:http://inhaltsanalyse-mit-r.de/sentiment.html有一个关于如何做场景分析的例子,我想这样做。它是这样的代码:
if(!require("quanteda")) {install.packages("quanteda"); library("quanteda")}
if(!require("readtext")) {install.packages("readtext"); library("readtext")}
if(!require("tidyverse")) {install.packages("tidyverse"); library("tidyverse")}
if(!require("scales")) {install.packages("scales"); library("scales")}
theme_set(theme_minimal())
////
load("daten/twitter/trumpclinton.korpus.RData")
korpus.stats.monat <- ungroup(korpus.stats.monat)
korpus.stats.monat
///
korpus.trump <- corpus_subset(korpus, Kandidat == "Trump")
meine.dfm.trump <- dfm(korpus.trump, groups = c("monat", "jahr"), dictionary = sentiment.lexikon)
sentiment.trump <- convert(meine.dfm.trump, "data.frame") %>%
gather(positive, negative, key = "Polarität", value = "Wörter") %>%
mutate(Datum = as.Date(paste("01", doc_id, sep = "."), "%d.%m.%Y")) %>%
filter(Datum >= "2015-04-01" & Datum <= "2017-04-01")
ggplot(sentiment.trump, aes(Datum, Wörter, colour = Polarität, group = Polarität)) +
geom_line(size = 1) +
scale_colour_brewer(palette = "Set1") +
scale_x_date(date_breaks = "2 months", date_labels = "%b %Y") +
ggtitle("Sentiment-Scores für Donald Trump") + xlab("Monat") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))这给了我这个:
meine.dfm.trump <- dfm(korpus.trump, groups = c("monat", "jahr"), dictionary = sentiment.lexikon)错误:除了警告消息: 1:'dfm.corpus()‘之外,组还必须有长度ndoc(x)。先使用“tokens()”。2:不推荐使用“组”;使用dfm_group()代替
所以我重新安排了它的更新,也许老版本是问题所在:
korpus.trump <- corpus_subset(korpus, Kandidat == "Trump")
korpus.trump.tokens <- tokens(korpus.trump)
meine.dfm.trump <- dfm(korpus.trump.tokens)
meine.dfm.trump.group <- dfm_group (meine.dfm.trump, c(monat, jahr))这仍然给了我这个:
错误:组必须有长度ndoc(x)
我明白了,这意味着物体的长度不够长吗?但是当我在dfm中查看monat和jahr时,它会在"type“character11221下面显示这两种类型,因此它们应该具有相同的长度。
我只用monat或jahr就行了。但是情节并没有给我任何东西,只有旁边的名字。
发布于 2022-01-26 17:19:15
为了解决您的问题,您需要对代码进行一些重新组织。自创建"Automatisierte Inhaltsanalyse R“网站以来,全德达发生了一些变化。
你需要改变的地方在下面。
....
meine.dfm.trump <- tokens(korpus.trump) %>%
dfm() %>%
dfm_group(groups = interaction(monat, jahr)) %>%
dfm_lookup(dictionary = sentiment.lexikon)
....https://stackoverflow.com/questions/70866396
复制相似问题