python基于情感词典的情感分析

今天给大家分享的是通过情感词典来对文本进行情感分析最后计算出情感得分 通过情感得分来判断正负调性

主要步骤:

python基于情感词典的情感分析

数据准备

本次情感词典采用的是BosonNLP的情感词典,来源于社交媒体文本,所以词典适用于处理社交媒体的情感分析

本次分析准备的文本数据有:

BosonNLP情感词典

停用词表

否定词表

程度副词表

python基于情感词典的情感分析

生成停用词词典

在生成停用词词典的时候要注意过滤否定词和程度副词

代码如下:

python基于情感词典的情感分析

数据预处理

在数据预处理部分主要做的是对文本进行jieba分词和去停用词

代码如下:

python基于情感词典的情感分析

分数计算前期准备

对文本进行分词以后,得到文本中的情感词、否定词和程度副词

读取情感词典文件、否定词文件、程度副词文件

然后将分词后的情感词、否定词和程度副词通过情感词典文件、否定词文件、程度副词文件分别放入三个字典,为下面计算情感分数做铺垫:

python基于情感词典的情感分析

python基于情感词典的情感分析

计算情感的分数

通过上一步得到了文本的分词结果,同时得到了文本的情感词、否定词和程度副词三个列表

遍历所有的情感词,看查看当前情感词的前面是否有否定词和程度副词。

如果没有否定词,就对当前情感词乘以1,如果有否定词或者有多个否定词,可以乘以(-1)^否定词的个数;如果有程度副词,就在当前情感词前面乘以程度副词的程度等级。

python基于情感词典的情感分析

测试

通过输入文本来测试一下由分词词典得到的情感分数:(最后得到的文本情感分数有正负之分 分数越高越趋近于正面 分数越低越趋近于负面)

python基于情感词典的情感分析

测试用例1: 今天吃了顿砂锅米线 味道特别好 下次还去

python基于情感词典的情感分析

测试用例2: 今天外面下雨了 心情也顺带有点沮丧 提不起精神

python基于情感词典的情感分析

测试用例3: 年年岁岁花相似 岁岁年年人不同

python基于情感词典的情感分析

测试用例4: 在淘宝买了个商品 可是快递员把我的快递随意乱扔 里面的东西都被摔碎了 真的好生气

python基于情感词典的情感分析

通过分数可以看到,还是分析的有点准的,但是相较于机器学习来做情感分析还是差距很大,后面有时间会陆续学习更新一些更深入的情感分析算法。希望大家多多支持~

如需源码请关注公众号【PyDream】后回复:【情感分析即可】

微信公众号二维码:

python基于情感词典的情感分析

Original: https://blog.csdn.net/liuxueyingwxnl/article/details/119860962
Author: 蔡霸霸i
Title: python基于情感词典的情感分析

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/530576/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球