精彩的 NRC 词典
最后,您将使用 NRC 词典。它会为单词标注多个情绪类别。还记得 Plutchik 的情绪之轮吗?NRC 词典会根据 Plutchik 的 8 种情绪,再加上正向/负向,为词语打标签。
本练习中有一个新运算符 %in%,用于判断一个向量的元素是否出现在另一个向量中。下面的代码中,%in% 会返回 FALSE、FALSE、TRUE。原因是:在 some_vec 中,1 和 2 不在 some_other_vector 里,而 3 存在,因此返回 TRUE。%in% 很适合用来查找匹配项。
some_vec <- c(1, 2, 3)
some_other_vector <- c(3, "a", "b")
some_vec %in% some_other_vector
另一个新运算符是 !。对逻辑条件加上 ! 会将结果取反。在上面的例子中,FALSE、FALSE、TRUE 会变成 TRUE、TRUE、FALSE。将它与 %in% 一起使用时,会把匹配结果取反,常用于去除已匹配到的项。
!some_vec %in% some_other_vector
我们已经为您准备好了 oz,它是《绿野仙踪》(The Wizard of Oz)的 tidy 版本;以及包含 "NRC" 词典且已重命名列名的 nrc。
本练习是课程的一部分
R 中的情感分析
交互式实操练习
通过完成这段示例代码来试试这个练习。
oz_plutchik <- oz %>%
# Join to nrc lexicon by term = word
inner_join(___, by = ___("___" = "___")) %>%
# Only consider Plutchik sentiments
___(!___ %in% c("___", "___")) %>%
# Group by sentiment
___(___) %>%
# Get total count by sentiment
___(total_count = ___(___))