Python利用结巴模块统计《水浒传》词频
中文分词是中文文本处理的一个基础性工作,结巴分词利用进行中文分词。其基本实现原理有三点:
基于Trie树结构实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图(DAG)
采用了动态规划查找最大概率路径, 找出基于词频的最大切分组合
对于未登录词,采用了基于汉字成词能力的HMM模型,使用了Viterbi算法
下面利用结巴分词队水浒传的词频进行了统计
更多内容访问omegaxyz.com
代码:
#!/usr/bin/python
# -*- coding:utf-8 -*- import sysimport jieba
import jieba.analyse
import xlwt # 写入Excel表的库if __name__ == "__main__":wbk = xlwt.Workbook(encoding='ascii')sheet = wbk.add_sheet("wordCount") # Excel单元格名字word_lst = []key_list = []for line in open('C:\\Users\\dell\\desktop\\1.txt'): # 1.txt是需要分词统计的文档try:item = line.strip('\n\r').split('\t') # 制表格切分# print(item)tags = jieba.analyse.extract_tags(item[0]) # jieba分词for t in tags:word_lst.append(t)except:password_dict = {}with open("wordCount.txt", 'w') as wf2: # 打开文件for item in word_lst:if item not in word_dict: # 统计数量word_dict[item] = 1else:word_dict[item] += 1orderList = list(word_dict.values())orderList.sort(reverse=True)# print orderList for i in range(len(orderList)):for key in word_dict:if word_dict[key] == orderList[i]:wf2.write(key + ' ' + str(word_dict[key]) + '\n') # 写入txt文档key_list.append(key)word_dict[key] = 0for i in range(len(key_list)):sheet.write(i, 1, label=orderList[i])sheet.write(i, 0, label=key_list[i])wbk.save('wordCount.xls') # 保存为 wordCount.xls文件
结果:
更多内容访问omegaxyz.com
Python利用结巴模块统计《水浒传》词频相关推荐
- Python——利用pygame模块制作RPG游戏(一)
利用pygame模块制作RPG游戏(一) 需要用到的第三方库:pygame 一.构造游戏的基本框架 1.首先准备好相应的游戏素材:背景,人物动作图片,音乐,音效等. 图片均用png格式,音乐音效均用o ...
- python利用xlrd模块读取xls表格选中某列提取全部数值,使用re去除英文字母,用ast将str类型转换成list
python利用xlrd模块读取xls表格选中某列提取全部数值,使用re去除英文字母,用ast将str类型转换成list import ast # 获取xls表中的代码并去重 import xlrd ...
- python commands执行不连续_[Python] 利用commands模块执行Linux shell命令
用Python写运维脚本时,经常需要执行linux shell的命令,Python中的commands模块专门用于调用Linux shell命令,并返回状态和结果,下面是commands模块的3个主要 ...
- [转载] Python利用openpyxl模块读取excel文件内容
参考链接: Python | 使用openpyxl模块调整Excel文件的行和列 import openpyxl wb = openpyxl.load_workbook('原始数据.xlsx') #读 ...
- python利用写模块_使用C++编写python扩展模块
简介 长话短说,这里说的扩展Python功能与直接用其它语言写一个动态链接库,然后让Python来调用有点不一样(虽然本质是一样的).而是指使用Python本身提供的API,使用C++来对Python ...
- python 利用time模块给程序计时
python的time内置模块是一个与时间相关的内置模块,很多人喜欢用time.time()获取当前时间的时间戳,利用程序前后两个时间戳的差值计算程序的运行时间,如下: 1.使用time.time() ...
- Python——利用sympy模块进行数学计算
参考链接: SymPy简易教程 SymPy库常用函数 Python sympy 模块常用功能(一) Python科学计算库SymPy初探 简介 SymPy是一个符号计算的Python库.它的目标是成为 ...
- python利用pywin32模块自动化操作微信发消息
本文是利用python 操作电脑微信发消息,用到win32gui和win32api模块,以便以后忘记,做此纪录! import win32gui import win32api import win3 ...
- Python利用pptx模块三步将图片插入特定PPT模板
任务描述 有一个如下图所示的PPT模板,希望将已有的图片以特定的顺序插入到模板占位符中 现有PPT模板 希望的结果 代码演示 import os from os.path import ...
- python利用datetime模块计算时间差
python中通过datetime模块可以很方便的计算两个时间的差,datetime的时间差单位可以是天.小时.秒,甚至是微秒,下面我们就来详细看下datetime的强大功能吧 今天写了点东西,要计算 ...
最新文章
- 微软好绝情:Windows 7再无重大更新!
- 分布式存储Ceph 快速安装手册
- 要命的定义函数。。。参数组合。请认真理解!
- java 内部类深度剖析
- Java程序员月薪20k的涨薪秘籍:培训班java找不到工作
- 四十八、第二份国外的Python考试(下篇)
- 自我价值感缺失的表现_不同类型的缺失价值观和应对方法
- Redis的6种数据类型
- https post 报400地址匹配不正确_如何发布领英动态post/article?
- 护士计算机怎么报名,护士自考本科怎样报名
- 在ag-grid表格上实现类似Excel中的按下enter键自动跳转到下一行对应的输入框功能,Angular4开发...
- Delay-Doppler equalization(8)(时延多普勒均衡)⭐
- 73种网页常用js代码
- amaze ui教程
- PTA练习4-11 统计素数并求和
- Vue中如何解决跨域问题
- python修改文件夹下文件夹的名字
- 【redis:二】持久化
- HP 笔记本电脑 - 笔记本电脑睡眠后如何唤醒
- itextpdf对PDF文件进行签名
热门文章
- Redis 配置文件详解
- 选择排序SelectSort
- mysql基础知识复习
- mangodb和php比较,php-mongodb从不同的数据库中选择
- vue中的静态资源打包
- http请求转为https请求 java_如何将Javaweb工程的访问协议由http改为https及通过域名访问?...
- linux下载搜狗命令,搜狗输入法linux安装 以及 12个依赖包下载链接分享(示例代码)...
- java课题设计实验报告,JAVA简单记事本程序设计实验报告
- JDK中IdentityHashMap使用详解
- 论文笔记_S2D.74_2021_ICRA_PENet:面向精确和高效的图像引导的深度补全