python机器学习8--自然语言处理(2)

1.移除用词

        在很多情况下,有一些文章内的英文字符、标点符号分词的结果不符合自己的预期,会出现一些不想要的分词,此时就能通过以下的函数自己设定用词,并且删除。

jieba.analyse.set_stop_words("stop_words.txt")

2.自定比重分数

        因为jieba对每一个字会给出IDF分数比重,但是在很多时候,会希望把文章中特别的关键字突显出来(或者降低),可以设定IDF分数高一些(或低一些),就能将想要的字突显出来(或者降低)。

 jieba.analyse.set_idf_path("idf.txt")         #读入IDF关键字比重分数

一个demo

import sys
from os import path
import jieba
import jieba.analyse
d=path.dirname(__file__)
jieba.load_userdict(path.join(d,r"C:\Users\nsy\Desktop\userdict.txt.txt"))
text="今天学习好烦躁,还没有效率"
content =text
extracted_tags=jieba.analyse.extract_tags(content,topK=10,withWeight=False)
print(" ,".join(extracted_tags))
jieba.analyse.set_stop_words(path.join(d, r"C:\Users\nsy\Desktop\stop_words.txt.txt"))
weighted_tags=jieba.analyse.extract_tags(content,topK=10,withWeight=True,allowPOS=('ns','n','vn','v'))
for item in weighted_tags:keyword,weight=itemprint(f"关键词:{keyword},权重:{weight}")

3.排列出最常出现的分词(次数的统计)

import sys
from os import path
import jieba
import jieba.analysed = path.dirname(__file__)# 根据Python版本打开文件
if sys.version_info > (3, 0):text = open(path.join(d, r"C:\\Users\\nsy\\Desktop\\test.txt"), 'r', encoding='utf-8').read()
else:text = open(path.join(d, r"C:\\Users\\nsy\\Desktop\\test.txt"), 'r').read()text = text.replace('\n', '')# 设置停用词文件路径,注意文件名是否正确
jieba.analyse.set_stop_words(r"C:\Users\nsy\Desktop\stop_words.txt.txt")
# 输出分词结果
print(" ".join(jieba.cut(text)))# 打印分隔线
print("-" * 10)# 使用自定义词典
jieba.load_userdict(path.join(d, r"C:\Users\nsy\Desktop\userdict.txt.txt"))# 初始化字典存储词频
dic = {}for ele in jieba.cut(text):if ele not in dic:dic[ele] = 1else:dic[ele] += 1# 按词频排序并输出
for w in sorted(dic, key=dic.get, reverse=True):print("%s %d" % (w, dic[w]))

4.通过jieba来分析和计算网站文章所探讨的主要内容

import sys
import jieba
import jieba.analyse
import urllib.request as httplib# 网络请求异常处理
try:# 网络文章的网址url = "https://csdnnews.blog.csdn.net/article/details/140678511?spm=1000.2115.3001.5928"# 送出连接的需求req = httplib.Request(url)# 打开网页response = httplib.urlopen(req)# 连接网页正常(200)if response.status == 200:# 如果是 Python 3.0 以上if sys.version_info > (3, 0):# 取得网页的数据并解码contents = response.read().decode(response.headers.get_content_charset())else:# 考虑到 Python 2 不再使用,这里可以省略对应的处理逻辑raise Exception("Python 2 is not supported")
except Exception as e:print("Error during HTTP request:", e)contents = ""# 去除不要的文字
jieba.analyse.set_stop_words("C:\\Users\\nsy\\Desktop\\stop_words.txt.txt")# 仅捕获地名、名词、动名词、动词
keywords = jieba.analyse.extract_tags(contents, topK=5, withWeight=True, allowPOS=('ns', 'n', 'vn'))# 输出关键词和相应的权重
for item in keywords:print("%s=%f" % (item[0], item[1]))print("*" * 40)# 数据结构字典 key:value
dic = {}# 做分词动作
words = jieba.cut(contents)# 仅处理名词、动名词
for word in words:if word not in dic:dic[word] = 1  # 记录为1else:dic[word] += 1  # 累加1# 由大到小排列并打印
for w in sorted(dic.items(), key=lambda x: x[1], reverse=True):print("%s: %d" % w)# 异常处理应该针对具体的操作,而不是放在代码的最后

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

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

相关文章

Ubuntu 防火墙设置

目录 1. 安装防火墙 2. 开启和关闭防火墙 3. 开放端口和服务规则 4. 关闭端口和删除服务规则 5. 查看防火墙状态 1. 安装防火墙 如果已经安装就忽略 # 安装ufw(Uncomplicated Firewall),这是Ubuntu上管理防火墙的一个简单工具 sudo ap…

uniapp引入自定义图标

目录 一、选择图标,加入购物车 二、下载到本地 三、导入项目 四、修改字体引用路径 五、开始使用 这里以扩展iconfont图标为例 官网:iconfont-阿里巴巴矢量图标库 一、选择图标,加入购物车 二、下载到本地 直接点击下载素材&#xff0…

地球的2亿年轮回:彗星雨下的地质巨变与未来展望

在浩瀚的宇宙中,地球正悄然经历着一次巨大的轮回。你是否曾想过,地球为何拥有如此活跃的板块构造和与众不同的大陆?科学家们发现,每隔大约2亿年,地球便会遭遇一场彗星雨,这场彗星淋浴不仅改变了地球的面貌&…

【TAROT学习日记】韦特体系塔罗牌学习(8)——战车 THE CHARIOT VII

韦特体系塔罗牌学习(8)——战车 THE CHARIOT VII 目录 韦特体系塔罗牌学习(8)——战车 THE CHARIOT VII牌面分析1. 基础信息2. 图片元素 正位牌意1. 关键词/句2.爱情婚姻3. 学业事业4. 人际财富5. 其他象征意 逆位牌意1. 关键词/句…

Java使用定时任务开始-结束活动

有一种场景,比如抢购活动,活动的开始肯定不是到点后手动点击开始按钮的,而是通过配置活动开始时间和结束时间,然后开启定时任务,通过定时任务来控制活动的开始和结束。 1. 活动上架--触发定时任务的开启 Override Tr…

yolov5使用flask部署至前端,实现照片\视频识别

初学yolo flask时,需要此功能,Csdn、Github、B站找到许多代码,效果并不满意。 近期,再度尝试,实现简单功能。 实现功能: 上传图片并识别,可以点击图片放大查看 上传视频并识别 识别后的文件下载功能 …

Windows电脑如何启动RTSP服务实现本地摄像头数据共享

技术背景 提起Windows共享本地摄像头,好多人想到的是通过ffmepg或vlc串流到服务器,实际上,用轻量级RTSP服务更简单,本文就介绍下,如何用大牛直播SDK的Windows轻量级RTSP服务,采集摄像头,生成本…

人工智能历史:从梦想到现实的变革之路

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

Git 安装教程

1、登录git 官方网站:https://git-scm.com/ 点击左边的 Downloads 或者 右边标识的下载标志,它根据电脑操作系统自动匹配版本 Downloads for Windows 2、以 windows 为例下载对应版本 网络有时可能不大好,阿里镜像下载超快。 下载好以后&a…

Tensorflow中高维矩阵的乘法运算tf.matmul(tf.linalg.matmul)详悉

1.问题由来 在tensorflow框架下,经常会用到矩阵的乘法运算,特别是高(多)维的矩阵运算,在这些矩阵运算时,经常使用到其中的tf.matmul或tf.linalg.matmul等函数。但高维矩阵在内部怎么运算的?其内…

npm yarn pnpm的区别

‌npm, ‌yarn, 和 ‌pnpm 都是用于管理 ‌JavaScript 项目依赖的工具,但它们在设计理念、性能和功能上有显著的区别。 npm 是 Node.js 的官方包管理器,主要用于管理和分发 Node.js 的依赖。它支持语义版本控制,确保在不同环境中保持一致性&a…

【深度学习入门】安装conda/miniconda、所需包类、CUDA与conda/Miniconda间的关系

深度学习入门 须知 本教程跟随李沐老师课程随笔,课程链接点击此处。 CUDA和Anaconda的关系 CUDA Toolkit是由Nvidia官方提供的完整工具包,其中提供了Nvidia驱动程序、开发CUDA程序相关的开发工具包等。 Anaconda在安装Pytorch等会用到的CUDA的框架时…

【INTEL(ALTERA)】Quartus® Prime Pro Edition 软件 v24.2 中,哪些 Agilex™ 5 IP 功能的硬件验证有限?

目录 说明 解决方法 说明 如下表所示,Quartus Prime 专业版软件 24.2 版为 Agilex™ 5 IP 或功能提供有限的硬件支持。此外,设备的设备型号、比特流和固件尚未最终确定。 影响 Agilex™ 5 特定功能的已知问题可参阅 Agilex 5 知识库文章搜索。 解决…

【Air724UG】4G模块

目录 一、实物图 二、原理图 引脚定义 三、简介 基本原理 产品参数 UART1 蓝色指示灯 五、注意: 源文件下载 可访问底部联系方式也可前往电子校园网官网搜索关键词 关键词: Air724UG 一…

wpf中轮询显示图片

本文的需求是,在一个文件夹中,放一堆图片的集合,然后在wpf程序中,按照定时的方式,循序显示照片。 全部代码 1.声明一个PictureInfo类 namespace WpfApp1 {public class PictureInfo{public string? FileName { get; …

科技日报:华宇TAS应用中间件亮相2024政法智能化建设技术装备及成果展

近日,2024政法智能化建设技术装备及成果展在北京国家会议中心举行。成果展上,信创领域的华宇TAS应用中间件产品引人注目。 中间件是一种基础软件,在信息系统中处于应用运行支撑及连接的基础地位,是构建数字化转型基础设施的中坚力…

uni-app全局文件与常用API

文章目录 rpx响应式单位import导入css样式及scss变量用法与static目录import导入css样式uni.scss变量用法 pages.json页面路由globalStyle的属性pages设置页面路径及窗口表现tabBar设置底部菜单选项及iconfont图标 vite.config中安装插件unplugin-auto-import自动导入vue和unia…

探索Perl的奇妙世界:入门学习与实战指南

一、Perl语言概述 1.1 Perl的起源与发展 Perl(Practical Extraction and Reporting Language)是一种高级、解释型、动态编程语言,由Larry Wall于1987年发明。Perl的初衷是作为一种文本处理工具,帮助系统管理员在Unix系统中处理报…

Godot游戏制作 04平台设计

新建创景,添加AnimatableBody2D节点。 添加Sprite2D节点 拖动图片 剪裁图片,吸附模式:像素吸附 添加CollisionShape2D,设置实际形状为矩形 重命名AnimatableBody2D节点为Platform,保存场景,拖动platform场景…

STM32 | 看门狗IWDG喂狗实战

点击上方"蓝字"关注我们 01、实现功能 1、通过按键中断,让CPU执行往非法地址写入一个数据(往非法地址写入数据,系统会卡死) 非法地址:0xC0000000 02、看门狗头文件 #ifndef __IWDG_H#define __IWDG_H​#include "stm32f4xx.h"​​​void Iwdg_Init…