主要内容

分析文本情绪

此示例显示了如何使用价值感知词典和情绪推理(VADER)算法进行情感分析。

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

  • 助推器 - 促进程序的情绪的词语或n-grams。例如,像“绝对”和“令人惊讶”的单词。

  • 阻尼器 - 抑制前令牌的情绪的词语或n-grams。例如,像“几乎没有”和“有点”的单词。

  • 否定 - 否定程序令牌的情绪的词语。例如,像“不是”和“不是”的单词。

为了评估文本中的情绪,使用vadersentementices功能。

加载数据

提取文件中的文本数据waydandupdates.xlsx.使用可阅读。文件waydandupdates.xlsx.包含包含hashtags的状态更新“#周末”“#假期”

filename =“waydendupdates.xlsx”;tbl = readtable(文件名,'texttype''细绳');头(TBL)
ANS =.8×2表ID TextData __ _________________________________________________________________________________ 1 "Happy anniversary! ❤ Next stop: Paris! ✈ #vacation" 2 "Haha, BBQ on the beach, engage smug mode!   ❤  #vacation" 3 "getting ready for Saturday night  #yum #weekend " 4 "Say it with me - I NEED A #VACATION!!! ☹" 5 " Chilling  at home for the first time in ages…This is the life!  #weekend" 6 "My last #weekend before the exam  ." 7 "can’t believe my #vacation is over  so unfair" 8 "Can’t wait for tennis this #weekend  "

从文本数据创建一系列令牌文档,并查看前几个文档。

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

评估情绪

使用该评估牌化文件的情绪Vadersentimentlexticon.功能。靠近1表示积极情绪,靠近-1的分数表示负面情绪,靠近0表示中性情绪。

compoundScores = vaderSentimentScores(文件);

查看前几个文件的分数。

复合血管(1:5)
ANS =.5×10.4738 0.9348 0.6705 -0.5067 0.7345

在Word云中可视化具有正面和负面情绪的文本。

idx =复合谱> 0;strpositive = str(Idx);strnegative = str(〜idx);图形子图(1,2,1)WordCloud(strspositive);标题(“积极情绪”)子图(1,2,2)WordCloud(strnegative);标题(“负面情绪”的)

图包含WordCloud类型的对象。Type WordCloud的图表具有标题积极情绪。WordCloud类型的图表具有标题负面情绪。

也可以看看

||

相关的话题