最新要闻
- 环球快报:2磅蛋糕是几寸适合多少人吃_2磅蛋糕是几寸
- 新消息丨贾跃亭宣布历史时刻:为梦想窒息FF 91量产!老外狠拆台展示车架或未全面投产
- Windows 11 2024版发布了!首个官方ISO镜像免费下载
- 环球观点:调查显示:超半数受访者认为学历还是敲门砖
- 环球今热点:男子将父亲骨灰撒入大海被抓?为啥不能私自撒?
- 全球消息!庆祝索尼第一方游戏登陆XGP:微软推出Xbox限定主机
- 微速讯:飞沫传播图片_飞沫传播
- 国产商用卫星上架电商:折后200万起
- 全球讯息:双电机三把锁!比亚迪F品牌“SF”谍照再曝光:或于6月发布
- 天天通讯!43万起 新一代长轴版奔驰GLC开售 网友:给我一个不买理想L9的理由
- 当前信息:《流浪地球2》摄影指导:没觉得中国电影比别人差
- 焦点热议:广东检出1例“恐龙血”:Hh孟买血型系统 比Rh还稀有
- 宿州埇桥:烧鸡展翅飞出一片“新天地”
- 特斯拉Model 3起火殃及宝马新车 车主索赔法院如此判决
- 新疆阿瓦提长绒棉:清爽透气纯棉背心9.9元/件狂促
- 小伙戒指卡手遇130名消防员演训:正好现场教学 科普一定不能硬拽
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
全球百事通!Python 应用 - jieba 分词 1:进行批量文本分词_艽野尘梦 better 的博客 - CSDN 博客
知识点小结
os.walk()
os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。os.walk() 方法是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。
import pandas as pdimport matplotlib.pyplot as pltimport jiebafrom PIL import Imagefrom wordcloud import WordCloud,ImageColorGeneratorfrom imageio import imreadimport numpy as np%matplotlib inline#内嵌绘图,省略掉plt.show()plt.rcParams["font.sans-serif"]=["SimHei"]plt.rcParams["axes.unicode_minus"]=False%config InlineBackend.figure_format = "svg"#矢量图设置,设定显示图片的分辨率
win32com 库
参考:
Python 使用 win32com 模块对 word 文件进行操作_Python 热爱者的博客 - CSDN 博客 https://blog.csdn.net/qdPython/article/details/114439716
(资料图片)
jieba 分词
参考:
jieba 分词 自定义词表简介_结巴库自定义分词_feng98ren 的博客 - CSDN 博客 https://blog.csdn.net/feng98ren/article/details/80436791
词云图
参考:
Python 生成词云图太简单了 | 拿来就用能的 Python 词云图代码 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/353795160
导入第三方库
主要使用 pandas、jieba、wordcloud、numpy、matplotlib、imageio 库
from win32com import client as wcdef Translate(filein,fileout): # 转换 wordapp = wc.Dispatch("Word.Application") doc = wordapp.Documents.Open(filein) # 为了让python可以在后续操作中r方式读取txt和不产生乱码,参数为4 doc.SaveAs(fileout, 4) doc.Close()
读取文件夹中的所有文件名
使用 os 库中的 walk 方法获得指定文件夹中的所有文件名
import osdef Translate_all(file_dir):#传入文件夹路径,转换docx为txt,并返回所有txt文件名 paths_tuple=os.walk(file_dir)#返回三元组,包括路径,文件名 for root, dirs, files in paths_tuple: paths=[] for file in files: split_file=os.path.splitext(file)#拆分成文件名和类型 if split_file[1] == ".docx": Translate(os.path.join(root, file),os.path.join(root, split_file[0]+".txt")) paths.append(split_file[0]+".txt")#os.path.join(root, file) elif split_file[1] == ".txt": paths.append(split_file[0]+".txt") return paths
word 文档批量转为 txt
使用 win32com 实现格式转换,首先编写单个 word 文件转换的函数:
files=Translate_all(r"政策txt\25政策txt\\")for file in files: with open(r"政策txt\25政策txt\\"+file, "r", encoding="utf-8", errors="ignore") as f: text = f.read() jieba.load_userdict(r"cn_stopwords.txt")#添加中文停用词字典 jieba.load_userdict(r"userdict.txt")#添加用户停用词字典 seg_list=jieba.lcut(text,use_paddle=True)#使用paddle模式进行分词 stop_words_counts={} for word in seg_list: if len(word)==1:#去掉单字词 continue elif r"\u" in repr(word):#不记录转义字符串 continue else: stop_words_counts[word]=stop_words_counts.get(word,0)+1#对word出现的频率进行统计,当word不在seg_list时,返回值是0,当word在seg_list中时,返回+1 stop_words_counts=list(stop_words_counts.items())#将字典转化为列表 stop_words_counts.sort(key=lambda x:x[1],reverse=True)#根据词频进行降序排序 data=pd.DataFrame(stop_words_counts,columns=["词","词频"]) #print(data.head()) data.to_csv(r"词频\\"+os.path.splitext(file)[0]+"词频.txt",encoding="utf_8_sig",index=False)
将函数嵌入到一个循环中,当判断为 docx 文件时就转换,当判定为 txt 文件时不处理,最终函数返回文件夹中的所有 txt 文件的名称:
# 绘制词云jpg = Image.open(r"人才引进.png")#图片形状mask = np.array(jpg) #将图片转换为数组print(mask)# 显示生成的词云图片my_cloud = WordCloud( background_color="white", # 设置背景颜色白色 width=1000, height=500, #宽度1000像素,高度860像素 scale=2, # 比列放大 数值越大 词云越清晰 font_path="simhei.ttf", # 设置字体为黑体 mask=mask, max_words=500, #random_state=5 # 设置随机生成状态,即多少种配色方案).generate_from_frequencies(dict(stop_words_counts))#image_colors = ImageColorGenerator(jpg)#根据背景图片设置颜色plt.subplots(figsize=(12,8),dpi=500)plt.imshow(my_cloud , interpolation="bilinear")# 用plt显示图片# 显示设置词云图中无坐标轴plt.axis("off")#去除坐标轴#plt.show()my_cloud.to_file("mywordcloud.png")
文本分词
最后,使用结巴分词载入中文分词表和我自定义的用户词表进行分词,这里使用的是 paddle 模式,其他三种模式的介绍,可以看最上面的知识点总结。我们去除了所有的单字词,并将词和词频按降序保存到了新的 txt 文件中。
files=Translate_all(r"政策txt\25政策txt\\")for file in files: with open(r"政策txt\25政策txt\\"+file, "r", encoding="utf-8", errors="ignore") as f: text = f.read() jieba.load_userdict(r"cn_stopwords.txt")#添加中文停用词字典 jieba.load_userdict(r"userdict.txt")#添加用户停用词字典 seg_list=jieba.lcut(text,use_paddle=True)#使用paddle模式进行分词 stop_words_counts={} for word in seg_list: if len(word)==1:#去掉单字词 continue elif r"\u" in repr(word):#不记录转义字符串 continue else: stop_words_counts[word]=stop_words_counts.get(word,0)+1#对word出现的频率进行统计,当word不在seg_list时,返回值是0,当word在seg_list中时,返回+1 stop_words_counts=list(stop_words_counts.items())#将字典转化为列表 stop_words_counts.sort(key=lambda x:x[1],reverse=True)#根据词频进行降序排序 data=pd.DataFrame(stop_words_counts,columns=["词","词频"]) #print(data.head()) data.to_csv(r"词频\\"+os.path.splitext(file)[0]+"词频.txt",encoding="utf_8_sig",index=False)
扩展——词云图绘制
将分词结果(词和词频)根据给定的图片样式生成词云图(注意原图色调要分明,这里给个小建议:如果是按几个文字展示词云图,向本文这样的,可以使用 word 做艺术字之后截图),首先将图片转为 numpy 矩阵,每个元素是一个三维数组(rgb)组成,将矩阵作为参数传入绘制词云图的方法中。
# 绘制词云jpg = Image.open(r"人才引进.png")#图片形状mask = np.array(jpg) #将图片转换为数组print(mask)# 显示生成的词云图片my_cloud = WordCloud( background_color="white", # 设置背景颜色白色 width=1000, height=500, #宽度1000像素,高度860像素 scale=2, # 比列放大 数值越大 词云越清晰 font_path="simhei.ttf", # 设置字体为黑体 mask=mask, max_words=500, #random_state=5 # 设置随机生成状态,即多少种配色方案).generate_from_frequencies(dict(stop_words_counts))#image_colors = ImageColorGenerator(jpg)#根据背景图片设置颜色plt.subplots(figsize=(12,8),dpi=500)plt.imshow(my_cloud , interpolation="bilinear")# 用plt显示图片# 显示设置词云图中无坐标轴plt.axis("off")#去除坐标轴#plt.show()my_cloud.to_file("mywordcloud.png")
关键词:
-
全球百事通!Python 应用 - jieba 分词 1:进行批量文本分词_艽野尘梦 better 的博客 - CSDN 博客
使用jieba分词实现批量文本分词,word文档批量转为txt文档,读取文件夹中所有文件名称,按给的图像绘制词云图
来源: 全球百事通!Python 应用 - jieba 分词 1:进行批量文本分词_艽野尘梦 better 的博客 - CSDN 博客
全球滚动:数论分块简介
【速看料】Mysql之SQL语句基础1
环球快报:2磅蛋糕是几寸适合多少人吃_2磅蛋糕是几寸
新消息丨贾跃亭宣布历史时刻:为梦想窒息FF 91量产!老外狠拆台展示车架或未全面投产
Windows 11 2024版发布了!首个官方ISO镜像免费下载
环球观点:调查显示:超半数受访者认为学历还是敲门砖
环球今热点:男子将父亲骨灰撒入大海被抓?为啥不能私自撒?
全球消息!庆祝索尼第一方游戏登陆XGP:微软推出Xbox限定主机
交互触摸大屏概念整理
速讯:全网最全的权限系统设计方案,不接受反驳!
要闻速递:[Redis]Redis概述
JSON多层嵌套复杂结构数据扁平化处理转为行列数据
微速讯:飞沫传播图片_飞沫传播
每日讯息!【财经分析】“意料之中”与“预期之外” 一季度债市踌躇中展现韧性
国产商用卫星上架电商:折后200万起
全球讯息:双电机三把锁!比亚迪F品牌“SF”谍照再曝光:或于6月发布
天天通讯!43万起 新一代长轴版奔驰GLC开售 网友:给我一个不买理想L9的理由
当前信息:《流浪地球2》摄影指导:没觉得中国电影比别人差
焦点热议:广东检出1例“恐龙血”:Hh孟买血型系统 比Rh还稀有
宿州埇桥:烧鸡展翅飞出一片“新天地”
Twitter营销教程_编程入门自学教程_菜鸟教程-免费教程分享
世界速递!skywalking插件工作原理剖析
全网最详细中英文ChatGPT-GPT-4示例文档-类比语句智能生成从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命
全球观察:利用Jackson序列化实现数据脱敏
特斯拉Model 3起火殃及宝马新车 车主索赔法院如此判决
新疆阿瓦提长绒棉:清爽透气纯棉背心9.9元/件狂促
小伙戒指卡手遇130名消防员演训:正好现场教学 科普一定不能硬拽
每日热门:城会玩!印度法官无法判决向ChatGPT求助 专家称或成全球法院系统标配
专为小姐姐打造!雅迪冠能Q9发布:超级续航+超级好看
环球讯息:清明将至,我省各地倡导文明祭祀育新风—— 追思亲人,如何更好“重情”
当前消息!Microsoft Edge 分屏 推荐
国家统计局:3月份采购经理指数延续扩张走势
世界速看:社保基金2022年四季度新进30股 增持64股
天天快看点丨法拉第未来发布会只展示了个车架 贾跃亭还有这些问题需要回答
女子带孩子吃饭故意往菜里扔头发 店家看监控发现:网友吐槽教坏孩子
号称德国500年纯酿造法!特斯拉推出啤酒GigaBier:3瓶卖667元
全球通讯!微软、索尼等巨头纷纷退出:全球最大游戏展E3宣布取消
当前速看:15.86万元起 新款大众途岳上市:换1.5T发动机、能喝92号油
助力“科技+产业+金融”良性发展 上海首单非公开科创债发行
让退化的森林再获新生
天天滚动:比亚迪不去美国 照样做大哥
世界观速讯丨海底捞2022年营收347亿!“最牛打工妹”杨利娟接任后扭亏为盈赚了13亿
天天热资讯!4G比5G更成熟 越来越多用户认可?三大运营商猛推5G 2025年将连接超10亿
熔断和降级有什么区别?
资讯:国际金融市场早知道:3月31日
全球播报:上证报:美元拐点将至,分析师称人民币资产或有望成为避险资产
当前播报:冯小刚主演 中国版《忠犬八公》今日上映:日本版曾感动无数人
视讯!发布/上市时间来了!NV RTX 4070国行售价大曝光:玩家直呼老黄良心了
读SQL进阶教程笔记03_自连接
pcm音频的录制、播放及转换
全球观点:非洲致命疾病 出现症状24小时内死亡:医生直呼病毒可怕引外界担心
快报:媒体:谁在开发“一键脱衣”App 行为龌龊已触犯法律 应严惩开发者
环球热文:新疆新鑫矿业(03833.HK)2022年度纯利增44.4%至7.45亿元 末期息0.15元
【世界新视野】美国火车又双叒叕脱轨了:装乙醇车厢爆炸起火
SSD还要降价!今年是涨不回来了
全球消息!实测一个月 我发现了家用脱毛仪的真相
全球资讯:FF91量产了 不过市场里已经没了贾老板的位置
全球速递!2022年全球新能源销冠 每天进账11亿!“技术为王”的比亚迪做对了什么?
全球资讯:来月经能吃人参果吗?
“门口五不放,放了家运衰”,5种东西是啥?老祖宗的经验之谈
关注:01、关于满减优惠券可叠加使用场景下的动态规划算法
当前视点!Spring AOP官方文档学习笔记(一)之AOP概述
全球焦点!魅族20系列价格公布:2999元起、无界顶配8499元!
当前头条:Epic要免费送大作《消逝的光芒》增强版了:立省百元!网友:E宝YYDS
香蕉、蜂蜜治疗便秘?又骗我好多年
当前热议!俄妹COS《生化危机1》吉尔 战斗服难掩好身材
今头条!【kafka】-生产环境问题-报错Maximum application poll interval
热议:流畅、稳定全面进化:魅族Flyme 10正式发布
天天资讯:17999元 ROG新款XG Mobile显卡坞上架:175W移动版RTX 4090
天天看点:魅族Flyme Auto车机系统正式发布:交互完全不输华为问界
世界观点:满血标准版48个月不卡!魅族20发布:2999元起
每日观点:3999元起 魅族20 PRO发布:魅族史上最高标准旗舰
环球热资讯!React Router 备忘清单_开发速查表分享
每日观点:希尔排序
环球微动态丨强网杯2022 GameMaster
环球视讯!128只债券推迟或取消发行
全球新资讯:李强会见博鳌亚洲论坛理事会成员
当前焦点!一款在我国卖不好的手机:真实销量把苹果都拉下马了
非洲再现致命性疾病:出现症状24小时内死亡
每日看点!魅族20 INFINITY无界版由京东方供屏:采用四边等窄设计
最新:元气森林官方发车:0糖0脂气泡水+燃茶多口味饮料混合囤货 2.8元/瓶新低
煤油心目中的魅族王者归来 三年回到国内中高端市场TOP5
环球快资讯:游戏行业也衰退?EA拟裁员6%减少办公空间
环球观焦点:张译《他是谁》豆瓣评分两天再降0.2:刑侦局你给我讲爱情?
一箭四星!中国金牌火箭长二丁火箭又一次成功:31年来超高可靠性
环球热讯:距《你的名字》仅一步之遥:新海诚《铃芽之旅》票房破4亿
山东高速股东户数下降2.82%,户均持股74.45万元
用户吐槽下载视频会员到期不能看 客服:需重新开通会员
天天快资讯:官方认证“全国美食地图”来了:快看看你家乡上榜没
【播资讯】业界首创!台铃发布水冷氢能两轮车:备用氢罐随身带 续航无压力
中科院联合研发技术!小米米家全效空气净化器明天开售:首发3699元
环球速递!苹果WWDC大会定档!iOS 17将至 看看你的iPhone还能不能升
【世界新要闻】NEXON新作TPS《幕后高手》开启不限量最终测试
使用pinctrl和gpio子系统开发GPIO驱动正点原子IMX6ULL阿尔法板的LED灯
Topaz Video AI V3.1.10 视频降噪升画质工具 安装教程(windows/macos版)
热讯:DBSAT脚本快速收集方法
实战SQL优化(以MySQL深分页为例)
世界看热讯:如何限制进程内存:cgroup
时讯:每日机构分析:3月30日