python词频统计_Python中文词频统计

2023-10-31

1. 下载一长篇中文小说。

1480647-20190318093332774-661440632.png

2. 从文件读取待分析文本。

3. 安装并使用jieba进行中文分词。

pip install jieba

import jieba

ljieba.lcut(text)

import jieba

txt = open(r'piao.txt','r',encoding='utf-8').read()

wordsls=jieba.lcut(txt)

wcdict={}

for word in wordsls:

if len(word)==1:

continue

else:

wcdict[word]=wcdict.get(word,0)+1

#word在wcdict中没有找到对应的词语,则返回0

wcls=list(wcdict.items())

wcls.sort(key=lambda x:x[1],reverse=True)

for i in range(25):

print(wcls[i])

4. 更新词库,加入所分析对象的专业词汇。

jieba.add_word('天罡北斗阵') #逐个添加

jieba.load_userdict(word_dict) #词库文本文件

jieba.add_word('思嘉奥哈拉')

jieba.lcut(txt)

5. 生成词频统计

1480647-20190318100132233-1499340735.png

6. 排序(如上图)

7. 排除语法型词汇,代词、冠词、连词

import jieba

txt = open(r'piao.txt','r',encoding='utf-8').read()

for ch in '-#$%^&*()@:{}_+[]~':

txt =txt.replace(ch," ")#将文本中的特殊字符转换为空格替代

wordsls=jieba.cut(txt)

#分解提取单词

print('\n')

List=str.strip('')

print(len(List),List)

#单词计数字典

print('/n')

wordsls=set(List)

print(len(wordsls),wordsls)

wcdict={}

for word in wordsls:

if len(word)==1:

continue

else:

wcdict[word]=wcdict.get(word,0)+1

#word在wcdict中没有找到对应的词语,则返回0

#wcdict['思嘉']=wcdict['思嘉']+wcdict["思嘉奥哈拉"]

#del(wcdict['思嘉奥哈拉'])

wcls=list(wcdict.items())

wcls.sort(key=lambda x:x[1],reverse=True)

#排除语法型词汇,代词、冠词、连词

xx=['他们','没有','自己','一个','什么','这样','知道','我们','这个','这些','不过','已经','要是','觉得','那样','而且']

wordsls= wordsls-xx

print(len(wordsls),wordsls)

jieba.add_word('思嘉 奥哈拉')

jieba.lcut(txt)

for i in range(25):

print(wcls[i])

import re

import collections

import numpy as np

import jieba

from wordcloud import WordCloud # 词云展示库

from PIL import Image # 图像处理库

import matplotlib.pyplot as plt # 图像展示库

txt = open(r'piao.txt','r',encoding='utf-8').read()

for ch in '-#$%^&*()@:{}_+[]~\n':

txt =txt.replace(ch," ")#将文本中的特殊字符转换为空格替代

stop_word=[]

stop_word=open("停用词.txt","r",encoding='UTF-8').read().split("\n")

wordsls=jieba.lcut(txt)

object_list=[]

for i in wordsls:

if len(i)!=1:

if i not in stop_word:

object_list.append(i)

word_counts = collections.Counter(object_list) # 对分词做词频统计

word_counts_top10 = word_counts.most_common(20) # 获取前10最高频的词

print (word_counts_top10) # 输出检查

wl_split=' '.join(object_list)

mywc = WordCloud().generate(wl_split)

plt.imshow(mywc)

plt.axis("off")

plt.show()

8. 输出词频最大TOP20,把结果存放到文件里

1480647-20190318220928290-2034942782.jpg

9. 生成词云

安装词云:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple wordcloud

安装 找到下载文件的路径 pip install wordcloud-1.5.0-cp37-cp37m-win_amd64.whl

配置:

在WordCloud安装的目录下找到WordCloud.py文件,对源码进行修改。

编辑wordcloud.py,找到FONT_PATH,将DroidSansMono.ttf修改成msyh.ttf。这个msyh.ttf表示微软雅黑中文字体。

在同一个目录下放置msyh.ttf字体文件供程序调用(字体可以在C:\Windows\Fonts复制)

使用:

1、引入模块

from wordcloud import WordCloud

import matplotlib.pyplot as plt

2、导入文本

准备生成词云的文本word_text =' '.join(wordlist) #是以空格分隔的字符串

4、生成词云

mywc = WordCloud().generate(wl_split)

5、显示词云

plt.imshow(mywc)

plt.axis("off")

plt.show()

1480647-20190318220905781-1350275979.png

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python词频统计_Python中文词频统计 的相关文章

  • 6 种易于上手的编程副业,每月赚取 1,000 多美元——没有废话

    没有自由职业者或博客 也不需要前期费用 你们中的大多数人阅读这样的故事是希望其中的一些故事能帮助您赚更多的钱 好吧 几年前我还是同一个人 我希望尝试一些新的副业并赚点钱 其中一个视频建议我在网上写作 此后我写了很多技术文章 在此过程中 我开
  • react结合js获取屏幕鼠标滚动等距离实现页面懒加载

    懒加载 也叫延迟加载 指的是在长网页中延迟加载内容或图像 是一种很好优化网页性能的方式 在滚动屏幕之前 可视化区域之外的内容不会进行加载 在屏幕滚动距离底部到一定距离时才加载 这样网页的加载速度更快 减少了服务器的负载 懒加载适用于图片较多
  • Python学习笔记第十一天(迭代器与生成器)

    Python学习笔记第十一天 迭代器与生成器 迭代器 StopIteration 生成器 结束语 迭代器与生成器 迭代器 迭代是Python最强大的功能之一 是访问集合元素的一种方式 迭代器是一个可以记住遍历的位置的对象 迭代器对象从集合的
  • linux启动service服务

    https medium com ameyadhamnaskar running java application as a service on centos 599609d0c641
  • Spark中的三种隐式转换

    1 使用SparkSQL中toDF时 import spark implicits 2 Spark整合Kudu 创建Kudu对象时 improt org apache kudu spark kudu 3 Spark中一些Scala类型转Ja
  • 每日一题:最长因子链

    最长因子链 题目 Daimayuan Online Judge 由于要找的数字不用按顺序 所以先给所有数排个序 找最长因子链类似于找最长上升子序列 用动态规划 状态划分 以第i个数结尾的因子链的倒数第二个数可能是第一个数 第二个数 第i 1
  • Settings sync 配置与使用

    1 settings sync 配置与使用 参考文章 我辈敢怀凌云志 参考文章 胖茄子 注意 settings sync 下载之后 一定要现在 忽略文件夹中 添加 History 忽略历史文件夹 1 获取令牌 步骤 点击 github 头像
  • 系统突然运行慢,线上CPU100%,频繁FullGC排查

    当然 这些问题最终导致的直观现象就是系统运行缓慢 并且有大量的报警 本文主要针对系统运行缓慢这一问题 提供该问题的排查思路 从而定位出问题的代码点 进而提供解决该问题的思路 对于线上系统突然产生的运行缓慢问题 如果该问题导致线上系统不可用
  • 实现QQ截图粘贴到聊天框功能

    QQ截图在网页聊天中不能直接粘贴 要实现像QQ微信一样能直接粘贴成图片需要做一些操作 利用paste事件捕获粘贴事件 clipboardData获取剪切板中的内容将文件用filereader接口读取出来 function paseImg v
  • Qt报Multiple definition错误的解决

    问题描述 今天在QT的开发环境下编写代码的时候发现这样的问题 如上图所示 经过自己千百次代码确认 代码是不存在任何问题 最后发现原来是自己添加文件的时候多添加了一次 导致在 pro文件下面有重复包含 发现 pro文件所示 有两个cluste
  • Basic Level 1041 考试座位号 (15分)

    题目 每个 PAT 考生在参加考试时都会被分配两个座位号 一个是试机座位 一个是考试座位 正常情况下 考生在入场时先得到试机座位号码 入座进入试机状态后 系统会显示该考生的考试座位号码 考试时考生需要换到考试座位就座 但有些考生迟到了 试机
  • MT,MTd,MD,MDd详解解决 MSVCRTD.LIB和LIBCMTD.LIB冲突

    项目开发过程中遇到MSVCRTD LIB和LIBCMTD LIB的冲突 后来找到原因是代码编译时选择c c 的运行库版本不一样 于是搞明白了MT MTd MD MDd的区别 问题出现的根源算是明白了 libc lib找不到也可以在这里找到答
  • 解决虚拟机的界面太小问题

    环境 虚拟机 vm16 os ubuntu18 问题描述 打开虚拟机界面太小 且在虚拟机 查看 中选择拉伸客户机还是自定义大小都不能改变到一个合适的大小 解决 进入系统 在setting中选择devices
  • 【Cocos\杂谈】Windows下Cocos2d-x 3.14环境搭建

    哈哈 我又回来啦 消失了几个月了 不知道各位观众老爷是否想念我了 经过了考研和期考双重洗礼 放假了终于能够重新回到学习开发的阵地上来了 近期呢 我这边做毕业设计 关于SpringMvc Spring Hibernate的SSH框架毕业设计
  • git:代码上库+代码拉取+打包修改点

    代码上库 注 每次代码上库之前请git pull检查一下 git add 文件名 git add之后查看git status查看一下缓存区文件状态 git commit m 项目名 taskID bugID 41586 Descriptio
  • Python抓取某东电商平台数据

    本文的文字及图片来源于网络 仅供学习 交流使用 不具有任何商业用途 版权归原作者所有 如有问题请及时联系我们以作处理 想要学习Python Python学习交流群 1039649593 满足你的需求 资料都已经上传群文件流 可以自行下载 还
  • STM32使用的相关知识点

    一 STM32最小系统 单片机最小系统一般有晶振电路 电源电路 复位电路以及调试电路组成 以下以STM32F103C8T6举例 1 电源电路 此时电容分为输入电容和输出电容 C5 C7为输入电容 作用是防止断电后出现电压倒置 C6 C8为输
  • 机器学习及其分类

    机器学习 机器学习 ML 是一门多领域交叉学科 涉及概率论 统计学 逼近论 凸分析 算法复杂度理论等多门学科 专门研究计算机怎样模拟或实现人类的学习行为 以获取新的知识或技能 重新组织已有的知识结构使之不断改善自身的性能 它是人工智能核心
  • 【华为OD机试】寻找身高相近的小朋友【2023 B卷

    华为OD机试 真题 点这里 华为OD机试 真题考点分类 点这里 题目描述 小明今年升学到小学一年级 来到新班级后发现其他小朋友们身高参差不齐 然后就想基于各小朋友和自己的身高差对他们进行排序 请帮他实现排序 输入描述 第一行为正整数H和N

随机推荐

  • Latex特殊符号、公式、颜色整合

    Latex特殊符号 公式整合 更新于2021 03 15 文章目录 Latex特殊符号 公式整合 花体 希腊字母 法语字符及重音符 括号 点 符号 运算符 箭头 公式 空格 其他特殊问题 公式编号 项目编号 正下方标注 加粗 条件公式 矩阵
  • c语言 for循环 逗号,vs中for语句中的逗号怎么使用?

    Visual Studio 2015中的for循环语句还可以使用逗号 该怎么使用逗号呢 下面我们就来看看详细的教程 软件名称 Visual Studio 2015 简体中文正式版 企业版 软件大小 4 5GB更新时间 2016 09 17立
  • 针式打印机打印发虚_针式打印机打印输出字符模糊不清晰的原因有哪些

    针式打印机打印输出字符模糊不清晰的原因有哪些 针式打印机应用于发票和多联单据 如果打印效果出现模糊或者不清晰情况的话 所打印出来的发票和多联单据就会报废 这样就会出现耗材浪费 所以针式打印机输出字符模糊不清的时候 我们就应该找出引起故障原因
  • TCP和UDP详解

    文章目录 一 UDP协议 1 1 UDP协议报文格式 1 2 UDP协议的特点 1 3 扩展问题 二 TCP协议 2 1 TCP协议报文格式 2 2 什么是可靠性 2 2 1 确认应答机制 2 2 2 超时重传机制 2 2 3 连接管理机制
  • java eclipse 和 adt eclipse 去掉红色的波浪线以及错误语法提示

    windows gt perferences gt editors gt text editor gt annotation 在里面选择errors 把其中的三个选项都取消勾选 在里面选择c c indexer markers 把其中的三个
  • 前端代码规范

    文章目录 一 编程规约 一 命名规范 二 HTML 规范 Vue Template 同样适用 三 CSS 规范 四 LESS 规范 五 Javascript 规范 二 Vue 项目规范 一 Vue 编码基础 二 Vue 项目目录规范 前端代
  • 网络安全:XSS、CSRF、点击劫持、HTTPS加密(中间人攻击、DNS劫持)、泛洪攻击、SQL注入

    一 XSS攻击 什么是 XSS 攻击 XSS 全称是 Cross Site Scripting 即跨站脚本 为了和 CSS 区分 故叫它XSS XSS 攻击是指浏览器中执行恶意脚本 无论是跨域还是同域 从而拿到用户的信息并进行操作 这些操作
  • AMA: Yoshua Bengio (self.MachineLearning)

    Yoshua Bengio http www iro umontreal ca bengioy yoshua en index html is one of the machine learning professors who led t
  • 线上环境 CPU 使用率飙升如何快速排查?

    相比于一大堆复杂的 JVM 调优过程 本文介绍的排查步骤还是挺简单的 可以帮助各位小伙伴排查一些简单问题 面试官问起来也好过啥也不会 这个 CPU 打满如何排查我被问过好多次 模拟高 CPU 场景 这里就不麻烦地建 Web 项目了 用一个最
  • 上拉电阻和下拉电阻的作用详解

    一 定义 1 上拉就是将不确定的信号通过一个电阻嵌位在高电平 电阻同时起限流作用 下拉同理 2 上拉是对器件注入电流 下拉是输出电流 3 弱强只是上拉电阻的阻值不同 没有什么严格区分 4 对于非集电极 或漏极 开路输出型电路 如普通门电路
  • HTTP服务器实现(一)

    实现一个HTTP服务器就是实现一个程序可以接受客户端发送给服务器进程的请求消息 通过解析这些请求消息 做出相应的响应 下面我们先来梳理一下整体的思路 进行服务器的初始化 int init server char ip int port in
  • FPGA时序约束系列文章汇总

    时序约束在FPGA开发中起着非常关键的作用 与时序约束相关的方面包括时钟分析 路径分析 布线和布局优化等 时序约束的正确性和准确性对于设计的成功是至关重要的 因为它们对电路的时序性能 功耗和资源利用率有着重要影响 有效的时序约束可以帮助设计
  • UE4开发学习笔记(双人游戏共享视角,共享相机)

    先创建一个共享相机的actor类share camera 里面只要spring arm和camera就行 在关卡蓝图里设置摄像机位置 setviewtargetwithblend是将character本身的摄像机过渡到公共摄像机 这里的bl
  • 前端小白练习题查缺补漏2

    1 声明不是 HTML 标签 它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令 声明没有结束标签 声明对大小写不敏感 2 end Math pow 2 50 111111 假设的值 var start end 100
  • duilib-自定义圆形按钮-环形进度条控件

    duilib 自定义圆形按钮 环形进度条控件 如何自定义一个圆形按钮控件内嵌到环形进度条底部 点击按钮刷新进度条值 类似下图 1 在UIDefine h中增加宏定义 define DUI CTR BTN PROGRESS T btnProg
  • sqli-labs(27)

    0X01 先查询闭合 id 1 报错 id 1 正确 知道是 的闭合语句 0X02那么开始我们的注入之旅 空格过滤了 尝试一下 0a绕过 也被过滤了 那么用and 1 1构造闭合 id 1 1 1 显示正确 我们来爆一下数据名称 哦豁 un
  • 产品经理工作积累(1)

    相比较做技术工作的人来说 做产品工作的更倾向于软能力 而这种软能力体现在个人的产品思想上 更或者说做产品的思维或理念 做产品除了本身的产品设计能力外 还有一点就是产品的思想 同一种产品不太的产品做出来后产品形态都会不同 特别是对于一些有独特
  • 在 Shell 脚本中调用另一个 Shell 脚本的三种方式

    先来说一下主要以下有几种方式 fork 如果脚本有执行权限的话 path to foo sh 如果没有 sh path to foo sh exec exec path to foo sh source source path to foo
  • android 反编译方法、工具介绍

    网上有很多的反编译文章 个人认为写的比较好的文章有 APK反编译得工具总结 转载 hayhx 博客园 我也是参考其文章来的 本人写此文章目的 以及反编译运用场景 主要有以下几方面 记录反编译的方法 方便自己用的时候比较方便 起到记录的作用
  • python词频统计_Python中文词频统计

    1 下载一长篇中文小说 2 从文件读取待分析文本 3 安装并使用jieba进行中文分词 pip install jieba import jieba ljieba lcut text import jieba txt open r piao