主要内容

分析文本中的情感

此示例演示如何使用价感知字典和情感推理器(VADER)算法进行情感分析。

VADER算法使用一个带注释的单词列表(情感词典),其中每个单词都有相应的情感得分。VADER算法还利用单词列表来修改文本中进行的单词的分数:

  • 助推器–提升进行中的代币情绪的单词或n-gram。例如,“绝对”和“惊人”等单词。

  • 阻尼器–抑制进行中的代币情绪的单词或n-gram。例如,像“几乎”和“稍微”这样的词。

  • 否定——否定进行中的标记的情绪的词。例如,像“不是”和“不是”这样的词。

要评估文本中的情绪,请使用维德分数功能。

加载数据

提取文件中的文本数据weekendUpdates.xlsx使用可读. 档案weekendUpdates.xlsx包含包含哈希标记的状态更新“#周末”“#假期”.

文件名=“weekendUpdates.xlsx”; tbl=可读(文件名,“文本类型”,“字符串”); 总目(待定)
ans=8×2表ID TextData\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu1周年快乐!❤ 下一站:巴黎!✈ #假期“2”哈哈,海滩烧烤,搞自鸣得意模式!❤  #假期“3”为周六晚上做好准备#百胜#周末“4”跟我说吧-我需要一个#假期!!!☹" 5“多年来第一次在家里发冷……这就是生活!#周末”6“考试前的最后一个周末”。7“不敢相信我的假期结束了,太不公平了”8“迫不及待地想在这个周末打网球”

从文本数据创建一个标记化文档数组,并查看前几个文档。

str = tbl.TextData;文件= tokenizedDocument (str);文档(1:5)
11代币:周年快乐!下一站:巴黎!✈#假期16代币:哈哈,在海滩上烧烤,进入自鸣得意模式!13代币:和我一起说——我需要一个#假期!!!平生第一次呆在家里,这就是生活!#周末

评价情绪

使用维德词库功能。接近1的分数表示积极情绪,接近-1的分数表示消极情绪,接近0的分数表示中性情绪。

compoundScores = vaderSentimentScores(文件);

查看前几个文档的分数。

复合分数(1:5)
ans=5×10.4738 0.9348 0.6705 -0.5067 0.7345

在单词云中形象化文本中的积极情绪和消极情绪。

idx=compoundScores>0;strPositive=str(idx);strNegative=str(~idx);图子图(1,2,1)wordcloud(strPositive);标题(“积极情绪”)子地块(1,2,2)wordcloud(strNegative);头衔(“负面情绪”)

图中包含wordcloud类型的对象。wordcloud类型的图表标题为积极情绪。wordcloud类型的图表标题为负面情绪。

另见

||

相关的话题