Я пытаюсь повторить анализ, используя tidytext в R, за исключением использования цикла. Конкретный пример взят из работы Джулии Силдж и Дэвида Робинсона по разработке текста с использованием R, Tidy Approach. Контекст для этого можно найти здесь: https://www.tidytextmining.com/sentiment.html#sentiment-analysis-with-inner-join.
В тексте они дают пример того, как проводить анализ настроений с помощью словаря NRC, который имеет восемь различных чувств, включая радость, гнев и ожидание. ,Я не делаю анализ для конкретной книги, как пример, поэтому я закомментировал эту строку, и она все еще работает:
nrc_list <- get_sentiments("nrc") %>%
filter(sentiment == "joy")
wordcount_joy <- wordcount %>%
# filter(book == "Emma") %>%
inner_join(nrc_list) %>%
count(word, sort = TRUE)
Как я уже говорил, это работает. Теперь я хочу изменить его так, чтобы он охватывал все восемь эмоций и сохранял результаты в кадре данных, помеченном эмоцией. Как я пытался его изменить:
emotion <- c('anger', 'disgust', 'joy', 'surprise', 'anticip', 'fear', 'sadness', 'trust')
for (i in emotion) {
nrc_list <- get_sentiments("nrc") %>%
filter(sentiment == "i")
wcount[[i]] <- wordcount %>%
inner_join(nrc_list) %>%
count(word, sort = TRUE)
}
Когда я это делаю, я получаю сообщение «Ошибка: объект« wcount »не найден». Я гуглил это, и похоже, что ответами на этот вопрос является использование wcount [[i]], но, очевидно, что-то не так, когда я пытался его адаптировать. Есть ли у вас какие-либо предложения?