вы должны преобразовать line
в свои данные после использования функции inner_join
, потому что это не столбец ваших данных, поэтому, если вам это нужно, вы должны создать его самостоятельно
обратите внимание на часть mutate(line = row_number())
, вы можете изменить ее, если вам нужен другой способ назначения номеров строк, а затем вы можете использовать index = line %/% 80
в count
попробуйте это:
library(dplyr)
library(tidytext)
library(gutenbergr)
freud_books <- gutenberg_download(c(14969, 15489, 34300, 35875, 35877, 38219, 41214),
meta_fields = "title")
tidy_books <- freud_books %>%
unnest_tokens(word, text)
f_sentiment <- tidy_books %>%
inner_join(get_sentiments("bing"), by = "word") %>%
mutate(line = row_number()) %>%
count(title, index = line %/% 80, sentiment) %>%
spread(sentiment, n, fill = 0) %>%
mutate(sentiment = positive - negative)