hello,大家好,我是wangzirui32,今天来教大家如何使用snownlp的中文文本情感分析功能,开始学习吧!

1. pip 安装

命令:

pip install snownlp -i https://pypi.douban.com/simple

因为下载速度很慢,所以使用国内镜像源下载。

2. SnowNLP情感分析

注意,SnowNLP的情感分析文本只处理unicode编码。在下面的代码中,我们在字符串前加了一个u,代表unicode字符串。
这里的测试文本为我博文下的某一条评论,代码:

from snownlp import SnowNLP
# 文本
text = u'好文,已收藏,学习的道路上一起进步,也期待你的关注与支持!'
# 分析
s = SnowNLP(text)
# 输出情绪为积极的概率
print(s.sentiments)

输出:

0.9993218654423944

输出数值越接近1,文本为积极向上的可能性就越大,在这里,输出值与1的差大约是0.0006,说明文本更接近积极情绪。
但你也可以换个测试文本:

text = u"还不给博主点个赞!"

输出:

0.8531838835572092

我们可以写一个函数,用于判断文本是否积极:

from snownlp import SnowNLPdef is_positive(text):# 将文本编码为unicodes = SnowNLP(text)if s.sentiments < 0.5:return Falseelse:return True# 测试函数
if is_positive(u"还不点个收藏,关注!"):print("文本很积极!")

运行代码,输出:

文本很积极!

3. SnowNLP其他属性方法

在SnowNLP对象中,还存在其他属性,这里介绍几个常用的。

3.1 words属性

输出文本的分词结果,代码:

from snownlp import SnowNLP
s = SnowNLP(u"学习的道路上一起进步,加油!")
print(s.words)

运行结果:

['学习', '的', '道路', '上', '一起', '进步', ',', '加油', '!']

3.2 pinyi属性

返回每个字的拼音,代码:

from snownlp import SnowNLP
s = SnowNLP(u"学习的道路上一起进步,加油!")
print(s.pinyin)

输出:

['xue', 'xi', 'de', 'dao', 'lu', 'shang', 'yi', 'qi', 'jin', 'bu', ',', 'jia', 'you', '!']

3.3 han属性

返回文本(此文本为繁体字)的简体中文,代码:

from snownlp import SnowNLP
s = SnowNLP(u"繁體字")
print(s.han)

输出:

繁体字

3.4 sentences属性

将文字用标点符号分割,返回列表。

from snownlp import SnowNLP
s = SnowNLP(u"学习的道路上一起进步,加油!")
print(s.sentences)

输出:

['学习的道路上一起进步', '加油']

3.5 keywords方法

返回文本的关键词,可以指定返回数量。这里引用了一部分某度百科对“自然语言处理”的解释:

from snownlp import SnowNLP
text = u"""自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。"""
s = SnowNLP(text)
print(s.keywords(5))  # 输出5个关键词

结果:

['计算机', '语言', '自然', '科学', '领域']

3.6 summary方法

返回对文本的摘要,可以指定摘要句子数量:

from snownlp import SnowNLP
text = u"""自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。..."""  # 省略号内容自行复制
s = SnowNLP(text)
print(s.summary(2))  # 返回2个句子

输出:

['自然语言处理是一门融语言学、计算机科学、数学于一体的科学', '自然语言处理是计算机科学领域与人工智能领域中的一个重要方向']

想了解更多关于snownlp的信息,请访问snownlp的Github仓库:
https://github.com/isnowfy/snownlp


好了,今天的课程就到这里,我是wangzirui32,我们下次再见!

Python:snownlp中文文本情感分析相关推荐

  1. snownlp中文文本情感分析详细教程

    hello,大家好,我是wangzirui32,今天来教大家如何使用snownlp的中文文本情感分析功能,开始学习吧! 1. pip 安装 命令: pip install snownlp -i htt ...

  2. snownlp 中文文本情感分析、相似度计算、分词等

    snownlp 官网:https://pypi.org/project/snownlp/ SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了[TextBlob](https ...

  3. python 文本分析库_Python有趣|中文文本情感分析

    前言 前文给大家说了python机器学习的路径,这光说不练假把式,这次,罗罗攀就带大家完成一个中文文本情感分析的机器学习项目,今天的流程如下: 数据情况和处理 数据情况 这里的数据为大众点评上的评论数 ...

  4. python情感分析模型_Python有趣|中文文本情感分析

    前言 前文给大家说了python机器学习的路径,这光说不练假把式,这次,罗罗攀就带大家完成一个中文文本情感分析的机器学习项目,今天的流程如下: 数据情况和处理 数据情况 这里的数据为大众点评上的评论数 ...

  5. python情感分析中文_Python有趣|中文文本情感分析

    前言 前文给大家说了python机器学习的路径,这光说不练假把式,这次,罗罗攀就带大家完成一个中文文本情感分析的机器学习项目,今天的流程如下: 数据情况和处理 数据情况 这里的数据为大众点评上的评论数 ...

  6. python中文文本情感分析

    目录 python中文文本情感分析 导语 训练模型保存并测试正确率 使用保存的模型 python中文文本情感分析 导语 要做一个项目要用到中文文本情感分析,查找了多种资料,在网上看了很多博客后,终于完 ...

  7. python中文文本分析_Python有趣|中文文本情感分析

    前言 前文给大家说了python机器学习的路径,这光说不练假把式,这次,罗罗攀就带大家完成一个中文文本情感分析的机器学习项目,今天的流程如下: 数据情况和处理 数据情况 这里的数据为大众点评上的评论数 ...

  8. NLP之情感分析:基于python编程(jieba库)实现中文文本情感分析(得到的是情感评分)之全部代码

    NLP之情感分析:基于python编程(jieba库)实现中文文本情感分析(得到的是情感评分)之全部代码 目录 全部代码 相关文章 NLP之情感分析:基于python编程(jieba库)实现中文文本情 ...

  9. NLP之TEA:基于python编程(jieba库)实现中文文本情感分析(得到的是情感评分)之全部代码

    NLP之TEA:基于python编程(jieba库)实现中文文本情感分析(得到的是情感评分)之全部代码 目录 全部代码 相关文章 NLP之TEA:基于python编程(jieba库)实现中文文本情感分 ...

最新文章

  1. Python:matplotlib实践:直方图、散点图展示、变色、线条变换、点样式变换、添加名称、设置横纵轴范围、在一张图上显示多条线
  2. webpack配置alias别名设置
  3. 解决NahimicSvc32.exe与bilibili直播姬的音频不兼容的问题
  4. SpringMVC 中整合JSON、XML视图一
  5. linkedlist(c语言_简单实现)
  6. linux 查看cpu
  7. mysql对测试如何_我如何对MySQL进行基准测试?
  8. struts2文件上传类型的过滤
  9. 即将开源 | 2亿用户背后的Flutter应用框架Fish Redux 1
  10. 数据结构与算法笔记一:稀疏数组的应用
  11. 顺通车间扫码出入库管理系统仓库扫码软件
  12. 配电管理地理信息系统解决方案
  13. 来,给产品狗起个正儿八经的名字!
  14. Emoji 表情还能这样玩?
  15. MySQL主从状态检查
  16. 等待事件 latch:cache buffers chains
  17. 利用PowerDesigner逆向工程抓取数据模型
  18. 暑假?不进厂?那就卷s同学吧
  19. 省时省力!这些Python高效代码片段必须牢记
  20. #今日论文推荐#掰开揉碎一篇Molecular Cancer文章来看circRNA的RBP机制研究是如何展开的

热门文章

  1. 后台执行linux命令
  2. 为何要重建索引 index
  3. 告诉你SuperMap iDesktop软件怎么一步步制作地图的方法
  4. wormhole make 问题
  5. Kubernetes TCP端口号
  6. 现代信号处理——时频分析与时频分布(时频分布的基本理论)
  7. 2017全球智慧城市战略指数分析
  8. PPP 协议及配置解析
  9. VBA遍历字典对象中独门秘籍
  10. [转]计算机视觉入门