前面的文章介绍了整洁文本和标记化,并且统计了词频和词频之间的相关性。但是,仅仅知道某些词汇出现的频率是不够的。正如我们自己在阅读一篇文章或者一本书的时候,能体会到作者的喜怒哀乐,我们也想知道如何利用R语言检测文本表达的含义和对事物的看法,挖掘文本中的观点。这就是情感分析。
通常,如果一篇文章中充满了赞美(或者批判)的词汇,那么我们就知道这篇文章赞美(或者批判)的观点。这是一种简单的情感分析的方法。但这并非唯一的方法,我们还有其它的方法。接下来,我们就来介绍如何用R语言实现情感分析。
现在有很多方法可以用来分析文本的观点或者情感。在tidytext程序包中,有一些情感词典,常用的是以下三个:
AFINN:对单词打分,介于-5和+5之间。分数越高,词汇越正面。
bing:这个是Bing Liu等人开发的。他有一本书,叫做Sentiment Analysis: mining sentiments, opinions, and emotions。有兴趣的朋友可以读一下。
nrc:nrc情感词典包括英语中8种感情(生气、恐惧、希望、信任、惊奇、悲伤、高兴和反感)。
这三个词典都建立在单词之上。它们根据正面感情和负面感情对英语词汇分类。下面,