python统计频数_用python统计小说出现频率最高的词语

Jieba是一个中文分词组件,可用于中文句子/词性分割、词性标注、未登录词识别,支持用户词典等功能。

Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型的2D图表和一些基本的3D图表。

首先用pip安装需要的两个库

pip install jieba

pip install matplotlib

#coding:utf-8

import jieba

from collections import Counter

import json

import matplotlib.pyplot as plt

import matplotlib

import sys

#解决matplotlib显示中文乱码的问题

plt.rcParams['font.sans-serif'] = ['SimHei']

plt.rcParams['font.family']='sans-serif'

xianni=open(sys.argv[1],'r').read()

xianni_words = [x for x in jieba.cut(xianni) if len(x) >= 2] #将全文分割,并将大于两个字的词语放入列表

c=Counter(xianni_words).most_common(10) #取最多的10组

print json.dumps(c, ensure_ascii=False)

name_list=[x[0] for x in c] #X轴的值

num_list=[x[1] for x in c] #Y轴的值

b=plt.bar(range(len(num_list)), num_list,tick_label=name_list)#画图

plt.xlabel(u'词语')

plt.ylabel(u'次数')

plt.title(u'文本分词统计')

plt.show()#展示

这里用我最喜欢的小说<仙逆>来看看

运行结果

a29f42690621

image.png

画图结果

a29f42690621

image.png

这里只是很简单运用了jieba和matplotlib就实现了频率统计问题,这两个库的功能远远不止如此,如果感兴趣请自行研究学习。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值