1

我正在尝试运行下面的代码,但出现错误

break/next 没有循环,跳转到顶层。

问题似乎出在 vader_df 上,但我不确定出了什么问题或如何解决它。vader_df应该采用文本向量并返回文本的情感分析数据框(尽管这显然不会在这里发生!)。

任何帮助表示赞赏。

library(vader)
library(tidyverse)
library(billboard)

data(lyrics)

lyrics <- lyrics %>%
  rename(song_lyrics = lyrics)

sentiment_lyrics <- vader_df(lyrics$song_lyrics, neu_set = F)

4

1 回答 1

0

请注意,您有一个包含 5701 条记录的数据集。

> summary(lyrics)
    title              artist              year           song_lyrics       
 Length:5701        Length:5701        Length:5701        Length:5701       
 Class :character   Class :character   Class :character   Class :character  
 Mode  :character   Mode  :character   Mode  :character   Mode  :character  

song_lyrics在我的机器(Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz 3.60 GHz)上分析其中的 100 个需要将近 38 秒。这意味着所有数据集大约需要 36 分钟。

> format(Sys.time(), "%a %b %d %X %Y")
[1] "Di Nov 23 15:47:57 2021"
> sentiment_lyrics <- vader_df(lyrics$song_lyrics[1:100], neu_set = TRUE)
> format(Sys.time(), "%a %b %d %X %Y")
[1] "Di Nov 23 15:48:35 2021"

对我来说,这个vader_df函数只neu_set = TRUE 用于这个测试用例。

如果可以满足您的要求,只需按默认值计算中性词,neu_set = TRUE并逐渐增加处理的文本数量。

于 2021-11-23T15:04:22.840 回答