用户评论文本情感分析后做走势分析图

别说谁变了你拦得住时间么 提交于 2020-03-23 18:33:56

3 月,跳不动了?>>>

本文讲解怎样对用户评论做情感分析,然后展示使用哪些Excel的公式和功能制作走势图,仅作为实操演示,实际工作中应根据研究问题选择合适的数据处理方法。

1,文本采集和文本情感分析

用网络爬虫采集用户评论的时候,必须把评论发布时间采集下来,前面很多文章讲了数据采集方法,不再赘述。

下一步将采集下来的用户评论导入GooSeeker文本分析平台进行处理。注意要给每条文本编一个序号。因为文本分词和情感分析软件只处理文本内容,导入时间没有意义,并不特殊处理,所以,时间信息留在原文,那么就需要用每条文本的编号将情感分析结果跟原文进行匹配。

下图是导入的数据格式,把数据放在excel中,一条一行,首行是表头,“序号”和“正文”是必须填的,序号可以是自然编号。

2,为每条原始数据计算情感倾向

GooSeeker情感分析平台会把原始文本切成句子,做句子级别的情感分析,假设制作统计图表的时候想用一条完整的文本内容作为单位,那么就需要把情感分析结果进行加总。其实本文还以天为单位再次汇总。如果根据句子所表达的主题进行分类以后看各自的走势,汇总方式就要相应做调整。

2.1,将情感倾向用数字表示

如下图,情感倾向本来用文字“正面”“负面”“中性”表示,首先要变成数字1,-1,0,才能求和。

2.2,用透视表求和

如下图,“序号”就是给原文编的号,“句子序号”是情感分析软件把原文切成句子以后自动编的号,可以看到“序号”相同的一条内容被切成多个句子,那么需要把句子的情感倾向加在一起。

选中全部数据,用“数据菜单”->“数据透视表”功能,以序号为行,统计情感倾向的求和就可以了。

2.3,拷贝汇总结果

情感倾向大于0就是正面,小于0是负面,等于0是中性。我们拷贝透视表,在旁边列里粘贴为数值,在新一列里输入下面函数式。然后按住单元格右下角的+标志往下拖动填充计算。

=IF(N2>0,"正面",IF(N2=0,"中性","负面"))

3, 与原数据匹配到发布时间

为了方便后面的计算,在底部新建工作表,把它命名为“导入数据表”,然后把最初导入GooSeeker分词平台的数据表拷贝到里面,注意要有发布时间这一列,而情感分析表就命名为“情感分析表”。

在“情感分析表”的新一列里输入下面的函数式,这里引用的数据表名和单元格要根据自己的实际情况修改,再自动填充计算。目的是把上表的序号(行标签列),与“导入数据表”中的序号进行关联匹配,就可以把发布时间索引到新一列里,下图的发布时间是显示成了文本格式,下面会调整成正常格式。

=INDEX(导入数据表!E:E,MATCH(情感分析表!M2,导入数据表!A:A,0))

自动填充计算后,选中发布时间一列,右键选设置单元格格式,弹窗里选日期的标准格式,就可以显示成年月日格式。

4,按日期统计各种情感倾向的数量

这里的时间带有小时分钟,为了能统计到同一天的情感数量,通过查找替换功能来过滤小时分钟,只保留年月日,如下图,在查找内容里输入空格和星号,替换为空字符即可。

然后用数据透视表功能,把发布时间作为行,情感倾向作为列,计算情感倾向的数量,再把时间设置为降序,就可以得到做折线图的统计表。

有些日期的情感倾向是空的,这种要用0代替,把时间一列拷贝到旁边位置,再把正面、负面、中性3列拷贝粘贴为数值,然后逐列筛选出空的单元格填上0。

5,制作可视化折线图

选中统计表,用“插入菜单”->“折线图”->“普通折线图”,就可以生成折线图。

最后对折线图的样式和排版做些调整就完成了。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!