You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言中删除nrc、bing、afinn情感词典中的指定词汇?

解决R中情感分析词典的词汇删除问题

我来帮你搞定这个问题!核心思路是先把词典加载到你的工作环境中变成可编辑的数据框,之后就能轻松删除你不需要的特定词汇了。下面是具体步骤和示例代码:

步骤1:将词典加载到工作环境

get_sentiments()函数每次调用都会返回新的词典数据,所以你需要先把它赋值给一个变量,这样才能修改:

# 加载并保存各个词典到工作环境
nrc_dict <- get_sentiments("nrc")
bing_dict <- get_sentiments("bing")
afinn_dict <- get_sentiments("afinn")

步骤2:删除特定词汇

根据你的需求,用dplyr的filter()函数剔除不需要的词汇。比如假设你想删除nrc词典中的"sad"和"frustrated"这两个词:

# 清理nrc词典:删除指定词汇
nrc_clean <- nrc_dict %>%
  filter(!word %in% c("sad", "frustrated"))

# 如果是要删除特定情感下的词汇(比如nrc中的"anger"类的某个词),可以加条件:
# nrc_clean <- nrc_dict %>%
#   filter(!(word == "hate" & sentiment == "anger"))

针对不同词典的结构,操作逻辑一致:

  • Bing词典是二元情感(positive/negative),删除词汇的方式和上面完全一样
  • Afinn词典带有情感分值,删除时同样用filter(!word %in% ...)即可

步骤3:用清理后的词典做情感分析

把你原来代码里的get_sentiments("nrc")替换成清理后的词典变量就行:

# 用清理后的nrc词典分析你的文本
MyTextFile %>% 
  inner_join(nrc_clean) %>% 
  count(sentiment, sort = TRUE)

这样就能确保你的情感分析不会包含那些你想排除的词汇了。如果需要清理其他词典(bing/afinn),只需要重复步骤2和3,替换对应的词典变量即可。

内容的提问来源于stack exchange,提问作者J. Doe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:38:23