Python利用结巴模块统计《水浒传》词频

2023-05-16

中文分词是中文文本处理的一个基础性工作,结巴分词利用进行中文分词。其基本实现原理有三点:

基于Trie树结构实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图(DAG)
采用了动态规划查找最大概率路径, 找出基于词频的最大切分组合
对于未登录词,采用了基于汉字成词能力的HMM模型,使用了Viterbi算法
下面利用结巴分词队水浒传的词频进行了统计
更多内容访问omegaxyz.com
代码:

#!/usr/bin/python    
# -*- coding:utf-8 -*-    

import sys

import 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:
            pass

    word_dict = {}
    with open("wordCount.txt", 'w') as wf2:  # 打开文件

        for item in word_lst:
            if item not in word_dict:  # 统计数量
                word_dict[item] = 1
            else:
                word_dict[item] += 1

        orderList = 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] = 0

    for 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

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

Python利用结巴模块统计《水浒传》词频 的相关文章

  • 汇编语言数据段查找ASCII码并回显

    实验要求 xff1a 在数据段预先存放16个十六进制的ASCII码 xff0c 首地址为ASC 从键盘输入一位十六进制数到BX xff0c 用ASC BX xff08 寄存器相对寻址 xff09 寻址方式找到对应数位的ASCII码 xff0
  • 汇编语言将正负数复制到不同的数组

    分离字数组ARRAY中的正 xff0c 负数 xff0c 把其中的正数复制到PDATA数组 xff1a 负数复制到NDATA数组 xff0c 并分别统计正 负数个数 DATAS SEGMENT array dw span class hlj
  • JAVA工程师最新面试题(来源于互联网)

    面向对象编程 xff08 OOP xff09 Java是一个支持并发 基于类和面向对象的计算机编程语言 下面列出了面向对象软件开发的优点 xff1a 代码开发模块化 xff0c 更易维护和修改 代码复用 增强代码的可靠性和灵活性 增加代码的
  • 关于内存溢出异常的查看以及解决办法

    内存溢出 又称为OOM OutOfMemoryError 处理内存溢出 首先要查看是否是由于内存泄露 Memory Leak 造成的内存溢出 Memory Overflow 可以使用内存影响分析工具 如 Eclipse Memory Ana
  • JAVA基本程序设计规范

    1 标识符是程序中用于命名诸如变量 常量 方法 类 包之类元素的名称 2 标识符是由字母 数字 下划线 和美元符号 构成的字符序列 标识符必须以字母或下划 开头 xff0c 不能以数字开头 标识符不能是保留字 标识符可以为任意长度 3 变量
  • 多目标优化问题概述

    图片不清楚请看多目标问题详解 xff1a 多目标问题详解 更多内容访问omegaxyz com 定义 xff1a 若干冲突或相互影响条件约束下在给定区域内寻找尽可能的最优解 xff08 非劣解 xff09 关键词 xff1a 条件约束 xf
  • NSGA2算法中文版详细介绍

    NSGA2主要是对NSGA算法的改进 NSGA是N Srinivas 和 K Deb在1995年发表的一篇名为 Multiobjective function optimization using nondominated sorting
  • 特征选择算法综述

    特征选择 xff08 feature selection xff09 作为一种常见的降维方法是模式识别的研究热点之一 它是指从原始特征集中选择使某种评估标准最优的特征子集 其目的是使选出的最优特征子集所构建的分类或回归模型达到和特征选择前近
  • 多目标优化详解【转载】

    欢迎大家访问我的网站发现更多内容omegaxyz com 多目标优化问题详解 生活中 许多问题都是由相互冲突和影响的多个目标组成 人们会经常遇到使多个目标在给定区域同时尽可能最佳的优化问题 也就是多目标优化问题 优化问题存在的优化目标超过一
  • Python 编写规范

    用IDE写Python编写时有时会有标记 xff0c 但是程序能正常运行 xff0c 这里的标记是python编写不规范 xff0c 下面给出一些规范写法 一行列数 PEP 8 规定为 79 列 xff0c 这个太苛刻了 xff0c 如果要
  • Python求解排列中的逆序数个数

    在一个排列中 xff0c 如果一对数的前后位置与大小顺序相反 xff0c 即前面的数大于后面的数 xff0c 那么它们就称为一个逆序 一个排列中逆序的总数就称为这个排列的逆序数 一个排列中所有逆序总数叫做这个排列的逆序数 也就是说 xff0
  • Python利用shelve模块设计简单数据库程序

    欢迎访问我的网站omegaxyz com 利用shelve模块写数据库文件在程序关闭时仍然能存储之前的数据 将所有内容都放到函数中会让程序更加结构化 主程序放在main函数中 xff0c 只有在if name 61 61 main 条件成立
  • Python抓取网页图片

    网上的代码基本上都是python2 xff0c 这里的代码使用的是python3注意没有urllib2这个库了 要先做几个个准备工作 xff1a 找到有图片的网站 指定电脑保存路径 利用浏览器工具查看网页代码中图片的保存路径 xff08 非
  • Python统计txt文件中的英文单词个数

    函数 xff1a example strip 分离此行的单词 sum 函数的第一个参数是一个列表 xff08 list xff09 第二个参数可以直接省去 python风格的代码只要一行 xff1a span class hljs buil
  • 苏宁易购执行总裁任峻在IT体系年会上的讲话

    尊敬的董事长 xff0c 各位苏宁同事 xff1a 大家晚上好 xff01 中国人传统的新春佳节很快就要到了 xff0c 非常高兴大家又可以难得的聚在一起 xff0c 共同迎新 首先还是要感谢大家的辛勤付出和对公司作出的贡献 xff0c 在
  • n阶行列式计算Python和C语言实现

    行列式在数学中 xff0c 是一个函数 xff0c 其定义域为det的矩阵A xff0c 取值为一个标量 xff0c 写作det A 或 A 无论是在线性代数 多项式理论 xff0c 还是在微积分学中 xff08 比如说换元积分法中 xff
  • Python使用wxpython制作简单文本编辑器

    欢迎大家访问我的网站发现更多内容 xff1a omegaxyz com 下面的python代码实现了一个简单的文本编辑器 xff0c 可以实现编辑加载和保存操作 真个界面是实用wxpython来构建的 wxpython是一个GUI图形界面的
  • Python读取系统文件夹内所有文件并统计数量

    大家先看一下Python os模块中的部分函数 python 路径相关的函数 os listdir dirname xff1a 列出dirname下的目录和文件 os getcwd xff1a 获得当前工作目录 os curdir 返回当前
  • Python获取指定目录下文件数量及总大小

    欢迎大家访问我的网站 xff1a omegaxyz com span class hljs keyword import span os totalSize 61 span class hljs number 0 span fileNum
  • Python脚本的“__name__”属性

    欢迎访问我的网站 xff1a omegaxyz com 每个Python脚本在运行时都有一个 name 属性 如果脚本作为模块被导入 xff0c 则其 name 属性的值被自动设置为模块名 xff1b 如果脚本独立运行 xff0c 则其 n

随机推荐

  • Python因数分解

    欢迎访问我的网站 xff1a omegaxyz com 把一个合数分解成若干个质因数的乘积的形式 xff0c 即求质因数的过程叫做分解质因数 分解质因数只针对合数 xff08 分解质因数也称分解素因数 xff09 求一个数分解质因数 xff
  • Python实现24点游戏

    欢迎访问我的网站 xff1a omegaxyz com 24点游戏是指随机选取4张扑克牌 xff08 不包括大小王 xff09 xff0c 然后通过四则运算来构造表达式 xff0c 如果表达式的值恰好等于24就赢一次 下面的代码定义了一个函
  • C++构造函数与析构函数

    构造函数 xff0c 就是用来初始化变量的 xff0c 它是用系统自动调用的 xff0c 要是没有写构造函数的话 xff0c 系统会为之生成一个默认的构造函数 xff0c 它的调用就是在声明变量的时候系统就自动地隐式调用 C 43 43 语
  • 胶水语言概述(以Python为例)

    什么是胶水语言 xff1f 胶水语言 xff08 是用来连接软件组件的程序设计语言 xff0c 通常是指脚本语言 胶水语言 xff08 glue language xff09 是用来连接软件组件的程序设计语言 xff08 通常是脚本语言 x
  • 软件工程师与码农的区别

    先说个题外话 xff0c 首先拥有这两种称呼的人都不是修电脑装软件的 本人认为计算机组装与维护 xff08 修电脑 xff0c 装软件 xff0c 装系统 xff0c office xff0c 基本C语言操作 xff09 是一个任何办公室白
  • html输入框输入限制

    JS判断只能是数字和小数点 1 文本框只能输入数字代码 小数点也不能输入 lt input nkeyup 61 34 this value 61 this value replace D g 39 39 34 onafterpaste 61
  • C++运算符重载详解

    更多内容访问omegaxyz com 为什么要对运算符进行重载 C 43 43 预定义中的运算符的操作对象只局限于基本的内置数据类型 xff0c 但是对于我们自定义的类型 xff08 类 xff09 是没有办法操作的 但是大多时候我们需要对
  • 合作协同进化算法概述(Cooperative Coevolution)

    合作协同进化 xff08 Cooperative Coevolution xff09 是求解大规模优化算法一个有效的方法 将大规模问题分解为一组组较小的子问题 而合作协同进化的关键是分解策略 分解策略的分类 随机分解 xff1a 随机选择基
  • C/C++移位运算符

    在一般的C语言教学中 xff0c 移位运算符很多情况下讲师直接跳过 xff0c 更多的会在汇编语言中系统得讲述 然而 xff0c 熟练掌握 高级语言中的移位很大程度上可以展现一个人的代码功底并且能提高编程效率 更多内容访问omegaxyz
  • 差分分组合作协同进化MATLAB代码

    合作协同进化已经引入协同进化算法 xff0c 目的是通过分而治之的范式解决日益复杂的优化问题 理论上 xff0c 协同改 变子成分的想法是十分适合解决大规模优化问题的 然而在实践中 xff0c 没有关于问题的先验知识 xff0c 问题应如何
  • 蒙提霍尔问题(三门问题,概率论)C语言验证

    三门问题 亦称为蒙提霍尔问题 xff0c 出自美国的电视游戏节目Let s Make a Deal 问题的名字来自该节目的主持人蒙提 霍尔 xff08 Monty Hall xff09 问题是这样的 xff1a 参赛者面前有三扇关闭着的门
  • 变邻域搜索算法(Variable Neighborhood Search,VNS)

    先说一下局部搜索 xff1a 更多内容访问omegaxyz com 局部搜索是解决最优化问题的一种启发式算法 对于某些计算起来非常复杂的最优化问题 xff0c 比如各种NP完全问题 xff0c 要找到最优解需要的时间随问题规模呈指数增长 x
  • 汇编程序16位带符号变量计算

    用16位指令编写完整的程序 xff0c 并上机测试 xff0c 计算W 61 xff08 x 43 y xff09 z 其中所有变量均为16位带符号变量 更多内容访问omegaxyz com 注意伪指令的使用 data segment sp
  • 16位伪指令汇编程序查看内存

    实验内容 用16位指令编写完整程序 xff0c 实现下列数据定义语句和相关指令 xff0c 在debug下查看内存数据的定义情况 xff0c 单步跟踪查看各寄存器的值 题目 xff1a ORG 0 ARRAY LABEL BYTE DA1
  • C++对类或结构体进行指定规则排序

    STL中就自带了排序函数sortsort 对给定区间所有元素进行排序 使用 include sort即可使用 xff0c 语法描述为 xff1a sort begin end cmp xff0c 表示一个范围 其中cmp是自己指定的比较规则
  • Html与JS正则表达式测试代码

    正则表达式 xff0c 又称规则表达式 xff08 英语 xff1a Regular Expression xff0c 在代码中常简写为regex regexp或RE xff09 xff0c 计算机科学的一个概念 正则表通常被用来检索 替换
  • sata2.0和sata3.0的区别

    sata是指电脑主板上的硬盘接口 xff0c 3 0是2 0的升级版本 xff0c 发布于2009年 xff0c 所以2010年之前的电脑主板基本都只提供sata2 0接口 xff0c 如果你不知道自己的电脑是sata2 0还是sata3
  • NLTK在python中文字所表达的情感预测

    NLTK是python环境下NLP工具包 xff0c 包含了丰富的文本处理和文本挖掘API 自然语言处理是计算机科学领域与人工智能领域中的一个重要方向 自然语言工具箱 xff08 NLTK xff0c Natural Language To
  • Python实现Windows电脑定时关机

    定时关机 xff0c 功能 xff1a windows下 xff0c 用户按照一定格式输入关机时间 xff0c 系统到指定时间自动关闭 思路 xff1a 从用户输入获取指定时间 分别以时分秒减去当前时间 最终计算得到当前时间距离指定 时间还
  • Python利用结巴模块统计《水浒传》词频

    中文分词是中文文本处理的一个基础性工作 xff0c 结巴分词利用进行中文分词 其基本实现原理有三点 xff1a 基于Trie树结构实现高效的词图扫描 xff0c 生成句子中汉字所有可能成词情况所构成的有向无环图 xff08 DAG 采用了动