python统计汉字个数是_Python中文词频统计

今天看到的一个统计,统计的金庸小说里面的高频词语。想着看了一周python,试试看能不能统计。

网上找的代码,调整顺序拼接了一下,分词库是结巴分词。

解决了python2.7中字典显示中文乱码的问题

分词代码:https://github.com/imwilsonxu/mao

频率统计:https://github.com/aolingwen/0006

结巴分词:https://github.com/fxsjy/jieba

# -*- coding: utf-8 -*-

import json

import re

import jieba

from collections import Counter

class StatWords(object):

def statTopN(self,path, n):

file = open(path,'r')

wordDict = {}

content = file.read()

wordlist = re.split('[\s\ \\,\;\.\!\n]+', content)

for word in wordlist:

if word in wordDict:

wordDict[word]=wordDict[word]+1

else:

wordDict[word] = 1

count = Counter(wordDict)

print json.dumps(count.most_common()[:n], encoding="UTF-8", ensure_ascii=False)

STOPWORDS = [u'的', u'地', u'得', u'而', u'了', u'在', u'是', u'我', u'有', u'和',

u'就', u'不', u'人', u'都', u'一', u'一个', u'上', u'也', u'很', u'到', u'说', u'要',

u'去', u'你', u'会', u'着', u'没有', u'看', u'好', u'自己', u'这']

PUNCTUATIONS = [u'。', u',', u'“', u'”', u'…', u'?', u'!', u'、', u';', u'(',

u')',u'?',u':']

#黑名单

f_in = open('file_in.txt')

f_out = open('file_out.txt', 'w')

#f_in原文档,f_out分词后的文档

try:

for l in f_in:

seg_list = jieba.cut(l)

# print "/".join(seg_list)

for seg in seg_list:

if seg not in STOPWORDS and seg not in PUNCTUATIONS:

f_out.write(seg.encode('utf-8', 'strict') + "\n")

finally:

f_in.close()

f_out.close()

if __name__ == '__main__':

s = StatWords()

s.statTopN("file_out.txt",10)

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

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

相关文章

cpu个数核数查看 服务器_服务器如何查看cpu核数

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":6,"count":6}]},"card":[{"des":"云服务器 ECS(Elastic Compute Service)是一…

SQL语句大全-珍藏首选

下列语句部分是Mssql语句,不可以在access中使用。 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)   DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)   DCL—数据控制…

Maven笔记——maven下载与配置

(一)Maven简介 Apache Maven是一个项目管理和构建的工具,它基于项目对象模型(POM)的概念。通过一小段描述信息来管理项目的构建,报告和文档。○ 项目对象模型○ 依赖管理模型○ 插件• 仓库分类&#xff1a…

Telerik Reporting之生成报表

本文为原创文,难免会有一些小得瑕疵,敬请谅解。所有示例均是博主测试过的,如有转载请标明出处,谢谢。第一步:建立一个普通类库。 第二步:在此类库中,新建项——Telerik Report报表。 第三步&…

python相对路径下的shell_shell,python获取当前路径(脚本的当前路径) (aso项目记录)...

一、shell获取脚本当前路径 cur_dir$(cd "$(dirname "$0")"; pwd) #获取当前脚本的绝对路径,参数$0是当前脚本对象 等同于cd dirname $0; pwd 但是,cd "dirname $0";pwd是错的,因为dirname不能用双引号 代码实…

spark 用户画像挖掘分析_如何基于Spark进行用户画像?

近期,comSysto公司分享了该公司研发团队利用Spark平台解决Kaggle竞赛问题的经历,为Spark等平台应用于数据科学领域提供了借鉴。主办方提供了一个包含5万个匿名驾驶员线路的数据集,竞赛的目的是根据路线研发出一个驾驶类型的算法类签名&#x…

Maven笔记——依赖管理

使用坐标导入jar包1) 在pom.xml中编写<dependencies>标签2) 在<dependencies>标签中使用<dependency>引入坐标3) 定义坐标的groupId、artifactId、version<dependencies><!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->…

ATL WTL 实现分析(五)

CDialogImpl 对话框本质上是布局和行为受约束的窗口。最原始的模态对话框API是&#xff1a; 1: WINUSERAPI2: INT_PTR3: WINAPI4: DialogBoxParamW(5: __in_opt HINSTANCE hInstance, //applicaton instance6: __in LPCWSTR lpTemplateName, //IDD : di…

python的read函数_Python Pandas pandas.read_sql函数方法的使用

pandas.read_sql&#xff08;sql&#xff0c;con&#xff0c;index_col None&#xff0c;coerce_float True&#xff0c;params None&#xff0c;parse_dates None&#xff0c;columns None&#xff0c;chunksize None)源代码 将SQL查询或数据库表读入DataFrame。 此功能…

android 4.2以上版本永不休眠

android4.2以上版本比android4.2以前的版本framework层框架部分有了很大的改变&#xff0c;androd4.2以前版本framework层给上的接口函数与android4.2以上版本的接口函数也有了些变化&#xff0c;以前让机器永不休眠的方法用在android4.2以上版本已经不起作用了。现将android4.…

peoplesoft系统与sap_sap顾问或者peoplesoft顾问转行做自研系统顾问的为什么那么少?...

我就是从SAP实施转做互联网供应链电商开放平台自研产品的。说一点体会。不愿意转行&#xff0c;是有舒适区(个人认为税后年收入30万可成为舒适区标准)。国内资深顾问收入超过这个数比较容易&#xff0c;工作强度也比互联网行业低&#xff0c;能力达到一定程度后可以摸鱼更显“惬…

Mybatis笔记——Mybatis入门

&#xff08;一&#xff09;MyBatis快速入门 通过一个案例快速入门Mybatis框架案例&#xff1a;查询user表中所有数据1) 创建user表&#xff0c;添加数据2) 创建模块&#xff0c;导入坐标3) 编写MyBatis核心配置文件-->替换连接信息&#xff0c;解决硬编码问题4) 编写SQL映…

POJ-3693 Maximum repetition substring 后缀数组

题目链接&#xff1a;http://poj.org/problem?id3693 求字符串的重复次数最多的且字典序最小的字串。 很不错的题目。罗穗骞大牛论文的模板题&#xff0c;摘了Neo / Add ~0U>>1大牛的详细题解&#xff0c;如下&#xff1a; 首先求第一问最大重复数。从N的范围来看O(N^2)…

asterisk1.8 for mipsel mysql

在astersik上要使用mysql数据库的话&#xff0c;需要加载跟mysql相关的3个模块 res_config_mysql.so app_mysql.so cdr_mysql.so 但是这个三个模块一直加载不上&#xff0c;自己写了程序用dlopen依然加载不上&#xff0c;用dlerror函数将错误信息打印出来&#xff1a; fil…

uln2003驱动蜂鸣器_让蜂鸣器发声

预备知识&#xff1a;蜂鸣器介绍开发板原理图上面蜂鸣器的电路图是这样的&#xff0c;根据视频知道它是一个无源蜂鸣器。可以看到蜂鸣器的一端和电阻相连&#xff0c;另一端和引脚BZ相连&#xff0c;注意这个BZ并不是元气名称&#xff0c;有图可知&#xff0c;元气名称都是蓝色…

python nlp_Python NLP入门教程

本文简要介绍Python自然语言处理(NLP)&#xff0c;使用Python的NLTK库。NLTK是Python的自然语言处理工具包&#xff0c;在NLP领域中&#xff0c;最常使用的一个Python库。 什么是NLP&#xff1f; 简单来说&#xff0c;自然语言处理(NLP)就是开发能够理解人类语言的应用程序或服…

asterisk1.8 拨号方案 mysql存储(动态)

1. 在asterisk库中创建下表 DROP TABLE IF EXISTS extensions; CREATE TABLE extensions ( id int(11) NOT NULL auto_increment, context varchar(20) NOT NULL default , exten varchar(20) NOT NULL default , priority tinyint(4) NOT NULL default 0, …

执行异常ORA-00918: column ambiguously defined

oracle查询报错信息&#xff1a;执行异常ORA-00918: column ambiguously defined 该错误信息意为有一列定义模糊&#xff0c;不知道是哪张表的。 通常在字段名前面加上前缀就可以解决。比如column改成a.column 在使用其他方案提供的查询工具时&#xff0c;外围可能包裹了类似se…

cesium 隐藏entity_cesium entity创建各类实体

html>创建实体import url(../Build/Cesium/Widgets/widgets.css);html, body, #cesiumContainer {width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden;}.cesium-viewer .cesium-widget-credits{ display:none }var myurl "http://mt1.google.cn/vt/…

python安装后cmd找不到_关于Python3.6环境中,virtualenv找不到命令的解决方法

今天收到一个网友的提问,说是,已经安装好了,Python3.6,系统环境变量也检查过,没有问题,在系统CMD命令行窗口,输入python可以返回当前安装的python环境的版本号,如下图python3.6 也测试了pip安装程序,也是正常的,然后用pip install virtualenv 安装虚拟环境,整个过程也没有报错,…