python库(21):

1 TextBlob简介

TextBlob 是一个基于 Python 的文本处理库,能够让基础的自然语言处理任务变得异常简单。

它提供了一个简单直观的 API,让你能够轻松执行词性标注、名词短语提取、情感分析、文本分类和关键词提取等功能。

值得一提的是,TextBlob 实际上是对 NLTK(自然语言工具包)的一种扩展,这让新手和熟练的开发者能够以更高的层面轻松完成复杂的 NLP 任务。

特性

  • 简洁的API:提供了一个用户友好的接口来执行常见的文本处理任务。
  • 语言支持:支持多种语言的处理。
  • 扩展性:可以轻松扩展和定制,与NLTK库紧密集成。
  • 多功能性:支持文本翻译、拼写检查等高级文本处理功能。

地址如下:https://github.com/sloria/TextBlob

2 TextBlob安装

安装TextBlob库:

pip install textblob -i https://pypi.tuna.tsinghua.edu.cn/simple

下载TextBlob所依赖的自然语言处理(NLP)数据。

python -m textblob.download_corpora

TextBlob 支持多种语种的模型,你可以通过安装额外的资源文件来启用它们。

你甚至可以为你的特定需求,创建和添加新的模型。

3 基本功能

3.1 分割句子

TextBlob可以自动将文本分割成句子,这对于需要对文本进行逐句分析的场景非常有用。

from textblob import TextBlobtext = "TextBlob is very easy to use. It makes text processing simple and intuitive."
blob = TextBlob(text)# 句子分割
for sentence in blob.sentences:print(sentence)

结果如下:

注意:这只是一个基本的示例,实际上 TextBlob 的分句器可能不如专门的中文分句库如 "jieba" 或 "SnowNLP" 那样准确,但它可以作为一个起点。

3.2 词性标注

定义:标记文本中的每个词的词性(名词、动词、形容词)

用途:

  1. 分析句子的语法结构
  2. 进行更高级的文本分析,如句法分析
  3. 识别和提取特定词的信息
from textblob import TextBlobtext = "The quick brown fox jumps over the lazy dog."
blob = TextBlob(text)
print(blob.tags)

结果如下:

3.3 名词提取

text = "The quick brown fox jumps over the lazy dog."
blob = TextBlob(text)
print(blob.noun_phrases)

结果如下:

3.4 情感分析

极性分析定义:

极性分析可以被看做一个任务,对于给定的一段带有观点的评论性文本,标记出它是整体正面或整体负面评价。

通俗讲,就是判断一段文字是正面,还是负面;赞同,还是反对。

极性分析意义:

极性分析具有很大的商业价值与公共服务价值。

比如对互联网网站、论坛、微博、抖音、快手的舆情检测,产品评价检测等。

from textblob import TextBlob# 自然语言处理很有趣
text = "Natural Language Processing is fascinating. "
blob = TextBlob(text)# 情感分析
sentiment = blob.sentiment
print(f"情感:极性 {sentiment.polarity}, 主观性 {sentiment.subjectivity}")

结果如下:

3.5 拼写检查和更正

from textblob import TextBlobtext = "this is a gaod ideo"
blob = TextBlob(text)# 拼写检查
corrected_blob = blob.correct()
print(f"原文:{text}")
print(f"更正:{corrected_blob}")

结果如下:

3.6 词和句子

from textblob import TextBlobtext = "this is a good idea"
blob = TextBlob(text)# 词操作
words = blob.words
print("词:", words)# 复数化和单数化
plural = words.pluralize()
print("复数:", plural)

结果如下:

3.7 词义和词根

定义:获取词的词义、同义词、词根等

用途:

  • 理解词的语义和语法形式
  • 在信息检索和知识图谱中使用
  • 改进文本处理和分析任务
from textblob import Wordword = Word("dragon")# 词义
synsets = word.synsets
print("词义:", synsets)# 词根
lemma = word.lemmatize()
print(f"词根:{lemma}")

结果如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/409243.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt+FFmpeg开发视频播放器笔记(二):界面UI搭建

效果图 主要使用无边框窗体搭建,实现窗体的拖动和缩放&#xff0c;播放列表、文件打开等。 主要代码 manwindow设计类 #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QMutex> #include "framelesshelper.h"QT_BEGIN_NA…

【网络】传输层协议——TCP协议(进阶)

目录 1.TCP连接的11种状态 2.再次理解三次挥手 2.1.再次理解三次握手 2.2.Socket编程和三次握手的关系 2.2.1.listen的参数 2.2.2.accept函数 2.3.TCP三次握手的优点 2.3.1.阻止重复历史连接的初始化 2.3.2.为什么两次握手不能防止旧的重复连接初始化造成混乱呢&am…

【附源码】Python :PYQT界面点击按钮随机变色

系列文章目录 Python 界面学习&#xff1a;PYQT界面点击按钮随机变色 文章目录 系列文章目录一、项目需求二、源代码三、代码分析3.1 导入模块&#xff1a;3.2 定义App类&#xff1a;3.3 构造函数&#xff1a;3.4 初始化用户界面&#xff1a;3.5 设置窗口属性&#xff1a;3.6 …

基于YOLOv7算法的高精度实时课堂场景下人脸检测系统

项目目标 开发一套基于YOLOv7的高精度实时人脸检测系统&#xff0c;适用于课堂场景。实现对图片、视频、文件夹内的图像及摄像头流的实时人脸检测。提供直观的图形界面&#xff0c;方便用户操作。支持模型权重的灵活选择与加载&#xff0c;以及后处理参数的调整。 主要功能 模…

基础算法--递推算法[信奥一本通]

本节所讲题源自【信奥一本通】C版&#xff1a;基础算法-第三章-递推算法 相信大家应该都接触过数列的概念。哎哟&#xff0c;一直在跟数组打交道&#xff0c;说数列感觉好陌生&#xff0c;哈哈。数列中的迭代法大家都还记得吗&#xff1a;通过反复应用特定规则&#xff0c;推导…

海思SD3403/SS928V100开发(16)Tsensor驱动开发

1. 前言 由于需要检测SD3403芯片内部实时温度,需要开发Tsensor传感器驱动和应用 查看手册发现SD3403内部有三个Tsensor传感器 可以参考之前我写的35系列平台Tsensor驱动开发记录 海思35系列平台Tsensor驱动开发(1)驱动编写_t sensor-CSDN博客 海思35系列平台Tsensor驱动…

MyBatis源码(6)拦截器

1、目标 本文的主要目标是学习MyBatis拦截器的源码&#xff0c;本文将以插入操作为例debug拦截器相关的源码 2、拦截器源码分析 调用mapper接口的insert插入记录方法&#xff0c;会调用SqlSession对象的insert方法 SqlSession执行insert方法 Spring容器会创建SqlSessionTemp…

【Algorithm】三步问题

欢迎来到 破晓的历程的 博客 ⛺️不负时光&#xff0c;不负己✈️ 文章目录 1.三步问题1.题目连接2.算法原理讲解&&代码实现 2.最小花费爬楼梯1.题目连接2.算法原理讲解&&代码实现 3.解码方法1.题目连接2.算法原理讲解&&代码实现 1.三步问题 1.题目连…

如何在分布式环境中实现高可靠性分布式锁

目录 一、简单了解分布式锁 &#xff08;一&#xff09;分布式锁&#xff1a;应对分布式环境的同步挑战 &#xff08;二&#xff09;分布式锁的实现方式 &#xff08;三&#xff09;分布式锁的使用场景 &#xff08;四&#xff09;分布式锁需满足的特点 二、Redis 实现分…

1/f噪声影响及解决措施

在将6位半数字万用表输入短接时&#xff0c;观察其输出。在逐渐增加均值次数后&#xff0c;噪声开始下降&#xff0c;达到一定程度后便停止下降&#xff0c;随着时间的推移&#xff0c;停止下降的噪声在逐渐增加&#xff0c;该部分主要是1/f噪声影响。 这种1/f噪声&#xff08;…

404错误页面简约清新源码 非常好看

源码介绍 404错误页面简约清新源码 非常好看&#xff0c;源码由HTMLCSSJS组成&#xff0c;记事本打开源码文件可以进行内容文字之类的修改&#xff0c;双击html文件可以本地运行效果&#xff0c;也可以上传到服务器里面&#xff0c;重定向这个界面 源码下载 404错误页面简约清…

摄像头实时检查程序,插入设备,自动显示画面,支持多个摄像头,支持拍照,照片放大缩小

支持的特性 插入摄像头设备后&#xff0c;无需手动选择&#xff0c;自动显示摄像头画面&#xff0c;需要预先授权支持多个摄像头切换显示多个摄像头时支持 默认显示特定名称的摄像头支持拍照支持照片放大&#xff0c;缩小 显示效果 完整代码 <!DOCTYPE html> <html…

Spring Boot 有哪些优点?

Spring Boot 有哪些优点&#xff1f; &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; Spring Boot以其简洁和高效的特点&#xff0c;革新了Java应用的开发和部署方式。以下是其几大核心优势&#xff0c;让你一目了然&#xff1a; 减少时间成…

【舞动生命,营养护航】亨廷顿舞蹈症患者的维生素补给站

Hey小伙伴们~&#x1f44b; 在这个充满色彩的世界里&#xff0c;每个人都在以自己的方式绽放光彩。但你知道吗&#xff1f;有一群特别的朋友&#xff0c;他们面对着亨廷顿舞蹈症的挑战&#xff0c;却依然以不屈不挠的精神舞动着生命的旋律。&#x1f483;✨ 今天&#xff0c;就…

Windows下线程的竞争与资源保护(win32-API)

一、前言 在线程编程中&#xff0c;资源共享与保护是一个核心议题&#xff0c;尤其当多个线程试图同时访问同一份资源时&#xff0c;如果不采取适当的措施&#xff0c;就会引发一系列的问题&#xff0c;如数据不一致、竞态条件、死锁等。为了确保数据的一致性和线程安全&#…

数据结构(树、平衡树、红黑树)

目录 树 树的遍历方式 平衡二叉树 旋转机制 左旋 右旋 旋转实例 左左 左右 右右 右左 总结 红黑树 树 相关概念 节点的内部结构如下 二叉树与二叉查找树的定义如下 树的遍历方式 前序遍历&#xff1a;当前节点&#xff0c;左子节点&#xff0c;右子结点 中序遍…

Excel的使用总结1

目录 1、汇总公式&#xff1a;TEXTJOIN 2、excel中选择某个区域的方法 3、excel中如何在复制的时候&#xff0c;不将公式一起复制过去 4、想要自动填充某个区域的值的方法 1、汇总公式&#xff1a;TEXTJOIN TEXTJOIN 函数 - Microsoft 支持 例&#xff1a;TEXTJOIN("…

25 配置交换机网关

配置交换机网关 一、配置交换机默认网关 配置管理网关&#xff1a; Switch(config)#ip default-gateway 192.168.1.254二、配置交换机管理IP及默认网关练习 Route0&#xff1a; # 进入特权模式 Router>enable# 进入全局配置模式 Router#configure terminal # 进入f0/0口…

了解prolog规则

要推理先要有规则&#xff1b; 假设有一条规则&#xff0c; 如果X和Y是朋友&#xff0c;那么Y和X也是朋友&#xff1b; 这条规则写成这样&#xff0c; friend(X,Y) :- friend(Y, X). X和Y都是大写&#xff0c;表示这是两个变量&#xff1b;符号 :- 表示推理关系&…

【计算机网络】mini HTTP服务器框架与代码

注注注&#xff1a;本篇博文都是代码实现细节&#xff0c;但不会进行演示&#xff0c;演示看孪生篇 另外&#xff0c;由于tcp套接字部分本质都是套路&#xff0c;所以就不再进行赘述。 目录 1 请求反序列化2 读取url文件内容3 构建响应 1 请求反序列化 我们肯定会先收到请求&…