python库(21):

news2024/9/25 1:18:05

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 TextBlob

text = "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 TextBlob

text = "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 TextBlob

text = "this is a gaod ideo"
blob = TextBlob(text)

# 拼写检查
corrected_blob = blob.correct()
print(f"原文:{text}")
print(f"更正:{corrected_blob}")

结果如下:

3.6 词和句子

from textblob import TextBlob

text = "this is a good idea"
blob = TextBlob(text)

# 词操作
words = blob.words
print("词:", words)

# 复数化和单数化
plural = words.pluralize()
print("复数:", plural)

结果如下:

3.7 词义和词根

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

用途:

  • 理解词的语义和语法形式
  • 在信息检索和知识图谱中使用
  • 改进文本处理和分析任务
from textblob import Word

word = Word("dragon")

# 词义
synsets = word.synsets
print("词义:", synsets)

# 词根
lemma = word.lemmatize()
print(f"词根:{lemma}")

结果如下:

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机网络计算题【408】——里昂视频

计算机网络【408】计算题 计算机网络概述【17题】【18题】甘特图【19题】甘特图【20题】【21题】 通信基础【14】求最大传输速率使用两个公式【27】【28】【29】差分曼彻斯特【30】[21]重点 p14 通信基础T31 流量控制与可靠传输机制T21 选择重传协议[GBN]:SR [22][24]***⭐【25…

linux系统使用 docker 来部署web环境 nginx+php7.4 并配置称 docker-compose-mysql.yml 文件

Docker是一个开源的容器化平台,旨在简化应用程序的创建、部署和管理。它基于OS-level虚拟化技术,通过将应用程序和其依赖项打包到一个称为容器的标准化单元中,使得应用程序可以在任何环境中快速、可靠地运行。 Docker的优势有以下几个方面&a…

通用定时器,输入捕获

这个图片主要看评论 这个是定时器输入捕获的基本配置步骤,主要也是看评论 注意:输入捕获开了两个中断,一个是捕获中断,只要有上升沿或者下降边沿或者双边沿,(主要看设置的捕获什么边沿)&#x…

【Python 千题 —— 基础篇】图形的面积(圆形)

Python 千题持续更新中 …… 脑图地址 👉:⭐https://twilight-fanyi.gitee.io/mind-map/Python千题.html⭐ 题目描述 题目描述 编写一个面向对象的程序,定义一个 Circle 类,该类有一个属性 radius(圆的半径),并具有一个方法 area() 来计算圆的面积。请根据以下要求实…

IM项目:进阶版即时通讯项目---文件存储和消息转发

文章目录 文件传输服务基本功能模块划分流程图实现逻辑代码实现 消息转发功能设计模块划分获取转发目标和消息处理代码实现 文件传输服务 基本功能 文件的上传文件的下载 模块划分 基于gflags进行参数和配置文件的解析基于spdlog进行日志输出基于etcd进行服务注册基于brpc进…

关于超长字符串/文本对应的数据从excel导入到PL/SQL中的尝试

问题: 1.字符串太长 2.str绑定之的结尾null缺失 将csv文件导入到PL/SQL表中存在的一些问题 1.本来我是需要将exceL上的几十条数据导入到PL/SQL数据库的一张表中,结果我花了许多时间 去导入。 想想一般情况下也就几十条数据,直接复制粘贴就…

并发编程之----线程池ThreadPoolExecutor,Excutors的使用及其工作原理

当前:并发编程之----线程池ThreadPoolExecutor,Excutors的使用及其工作原理 Redis高级----主从、哨兵、分片、脑裂原理-CSDN博客 计算机网络--面试知识总结一 计算机网络-----面试知识总结二 计算机网络--面试总结三(Http与Https) 计算机…

代码随想录 | 回溯算法总结

在代码随想录算法 | 回溯算法先导知识 | 题目分类,理论基础-CSDN博客中我们详细的介绍了回溯算法的理论知识,不同于教科书般的讲解,这里介绍的回溯法的效率,解决的问题以及模板都是在刷题的过程中非常实用! 回溯是递归…

黑神话悟空|风灵月影 35项修改器下载

《黑神话:悟空》是由游戏科学公司制作的一款动作角色扮演游戏,于2024年8月20日正式发售。游戏改编自中国著名的神魔小说《西游记》,玩家在游戏中将扮演一位“天命人”,踏上一条充满危险与惊奇的西游之路。下面为带来这款游戏的修改…

AI人像换脸!Reactor插件本地部署方法(含报错解决及整合包)

​ Reactor插件是什么?有什么用? Reactor 是一个用于 Stable Diffusion 的换脸插件, 主要功能是实现图片中的精确换脸。它可以自动检测并替换图片中的多个面部,适用于多种场景,比如生成逼真的图像或者进行复杂的图片处…

InternVL多模态模型训练教程,流程图识别检测LLM-v1版本。检测流程图,输出基础图形bounding box

文章目录 项目介绍求一个star环境准备模型下载多模态大语言模型 (InternVL 2.0) 构造训练数据集单张图片:Grounding / Detection Data 开始训练 项目介绍 本篇文章主要是讲如何训练InternVL2模型,详细信息可以看我的Github repo,欢迎star&am…

ffplay源码分析(二)结构体VideoState

在多媒体的世界里,播放器是离用户最近的一环,它将数字编码的音频和视频数据转化为生动的视听体验。ffplay 播放器作为一款强大而备受关注的工具,其背后隐藏着一系列精妙的结构体,它们协同工作,共同完成了从数据读取、解…

Unity3D 遍历预制体

Unity3D 遍历预制体进行批量化处理。 遍历预制体 有时候,我们需要对一些预制体资源进行批量化处理,如果每一个预制体都手动处理,就会耗费很多时间精力,也容易出错。 我们可以写一个脚本遍历预制体,对预制体进行修改…

单HTML文件集成vue3+ElementPlus的使用

1、新建一个HTML文件 2、HTML文件引用vue3.js 3、引用elementplus.js和elementplus.css 4、Vue初始化ElementPlus 5、页面中可以使用ElementPlus啦 HTML文件例子如下&#xff1a; <html><head><meta charset"UTF-8"><script src"./js/vue…

NSTimer 引发的循环引用(内存泄漏)| NSTimer强引用

在iOS中使用NSTimer(定时器)不当会引发内存泄漏. NSTimer 有多种创建方式,具体可以看这位朋友的文章:https://blog.51cto.com/u_16099225/6716123 我这里主要讲使用NSTimer 会引发的内存泄漏情况以及解决方法: 内存泄漏出现的场景: VC A push 到VC B, VC B里启动了一个 NST…

Java基础之方法与数组

方法 在Java中&#xff0c; 方法的定义包括方法的修饰符、返回类型、方法名、参数列表和方法体。方法既能够模块化的组织代码(当代码规模比较复杂的时候)。也做到代码被重复使用&#xff08;一份代码可以在多个位置使用&#xff09;。Java中的方法类似与C语言中的函数&#xf…

Java SpringBoot实战教程:如何一步步构建保险业务管理与数据分析系统

✍✍计算机毕业编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java、…

LlamaIndex 实现 RAG(三)- 向量数据

RAG 中使用向量存储知识和文档数据&#xff0c;召回时通过语意进行搜索。文档转为向量是个非常消耗时的操作&#xff0c;不同 Embedding Model 参数不同&#xff0c;结果维度也不同&#xff0c;消耗的算力也不同。所以通常的做法都会在索引阶段&#xff08;Embedding&#xff0…

deeplab3-plus(中文翻译)

** Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation 文章目录 Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation1 Introduction2 Related Work3 Methods3.1 Encoder-Decoder with Atrous Convolution…

鸿蒙南向开发:测试框架xdevice核心组件

简介 xdevice是OpenHarmony中为测试框架的核心组件&#xff0c;提供用例执行所依赖的相关服务。 xdevice主要包括以下几个主要模块&#xff1a; command&#xff0c;用户与测试平台命令行交互模块&#xff0c;提供用户输入命令解析&#xff0c;命令处理。config&#xff0c;…