jieba库是python提供的一个标准的用于分词的函数库_运用jieba库分词
---恢复内容开始---
运用jieba库分词
一、jieba库基本介绍
1、jieba库概述
jieba是优秀的中文分词第三方库
-中文文本需要通过分词获得单个的词语
-jieba是优秀的中文分词第三方库,需要额外安装
-jieba库提供三种分词模式,最简单只需掌握一个函数
2、jieba分词的原理
jieba分词依靠中文词库
-利用一个中文词库,确定汉字之间的关联概率
-汉字间概率大的组成词组,形成分词结果
-除了分词,用户还可以添加自定义的词组
3、jieba库使用说明
(1)、jieba分词的三种模式
精确模式、全模式、搜索引擎模式
-精确模式:把文本精确的切分开,不存在冗余单词
-全模式:把文本中所有可能的词语都扫描出来,有冗余
-搜索引擎模式:在精确模式基础上,对长词再次切分
(2)、jieba库常用函数
二、安装jieba库
点击电脑中的‘开始’,然后在搜索栏中输入‘cmd’,点击‘命令指示符’,出现界面后在输入‘pip install jieba’,刚开始的时候,我的电脑出现了这样的情况,安装不了。
后来在老师的帮助下,就安装成功了。而且在安装其他库的时候也不会再出现第一次的情况。
这样就安装成功啦~~~
三、jieba库的使用用例
1、分词
2、词云
这是我在网上找的词云的一个例子:
1 # 如果您需要使用此代码,os.chdir路经需要指定到txt文本所在路径
2 # 使用zipin函数,需要txt有read()函数可以打开的正确的编码格式
3 # 使用cipin函数需要安装jieba库
4 # 使用word cloud函数需要安装wordcloud与matplotlib库
5 import os
6 import codecs
7 import jieba
8 import pandas as pd
9 from wordcloud import wordcloud
10 from scipy.misc import imread
11 import matplotlib.pyplot as plt
12 os.chdir("/users/zhaohaibo/desktop")
13
14 class hlm(object):
15
16 # —————————————————————
17 # zipin(self, readdoc, writedoc)
18 # readdoc: 要读取的文件名
19 # writedoc:要写入的文件名
20
21 # output
22 # 字频前100,并写入writedoc
23 # —————————————————————
24 def zipin(self, readdoc, writedoc):
25 word_lst = []
26 word_dict = {}
27 exclude_str = ",。!?、()【】<>《》=:+-*—“”…"
28 with open(readdoc,"r") as filein ,open(writedoc,'w') as fileout:
29
30 # 添加每一个字到列表中
31 for line in filein:
32 for char in line:
33 word_lst.append(char)
34
35 # 用字典统计每个字出现的个数
36 for char in word_lst:
37 if char not in exclude_str:
38 if char.strip() not in word_dict: # strip去除各种空白
39 word_dict[char] = 1
40 else :
41 word_dict[char] += 1
42
43 # 排序x[1]是按字频排序,x[0]则是按字排序
44 lstwords = sorted(word_dict.items(), key=lambda x:x[1], reverse=true)
45
46 # 输出结果 (前100)
47 print ('字符\t字频')
48 print ('=============')
49 for e in lstwords[:100]:
50 print ('%s\t%d' % e)
51 fileout.write('%s, %d\n' % e)
52
53
54 # —————————————————————
55 # cipin(self, doc)
56 # doc: 要读取的文件名
57
58 # return:
59 # 词频表(dataframe格式)
60 # —————————————————————
61 def cipin(self, doc):
62 wdict = {}
63 f = open(doc,"r")
64 for line in f.readlines():
65 words = jieba.cut(line)
66 for w in words:
67 if(w not in wdict):
68 wdict[w] = 1
69 else:
70 wdict[w] += 1
71 # 导入停用词表
72 stop = pd.read_csv('stoplist.txt', encoding = 'utf-8', sep = 'zhao', header = none,engine = 'python') #sep:分割符号(需要用一个确定不会出现在停用词表中的单词)
73 stop.columns = ['word']
74 stop = [' '] + list(stop.word) #python读取时不会读取到空格。但空格依旧需要去除。所以加上空格; 读取后的stop是series的结构,需要转成列表
75 for i in range(len(stop)):
76 if(stop[i] in wdict):
77 wdict.pop(stop[i])
78
79 ind = list(wdict.keys())
80 val = list(wdict.values())
81 ind = pd.series(ind)
82 val = pd.series(val)
83 data = pd.dataframe()
84 data['词'] = ind
85 data['词频'] = val
86 return data
87
88 # —————————————————————
89 # ciyun(self, doc)
90 # doc: 要读取的文件名
91
92 # output:
93 # 词云图
94 # —————————————————————
95 def ciyun(self,doc):
96 g = open(doc,"r").read()
97 back_pic = imread("aixin.jpg") # 设置背景图片
98 wc = wordcloud( font_path='/system/library/fonts/stheiti medium.ttc',#设置字体
99 background_color="white", #背景颜色
100 max_words=2000,# 词云显示的最大词数
101 mask=back_pic,#设置背景图片
102 max_font_size=200, #字体最大值
103 random_state=42,
104 ).generate(g)
105 plt.figure(figsize=(64,32))
106 plt.imshow(wc)
107 plt.axis('off')
108 plt.savefig("ciyun.jpg")
109 plt.show()
110
111
112 def main(self,readdoc):
113 # self.zipin(readdoc,writedoc)
114 df = self.cipin(readdoc)
115 #self.ciyun(readdoc)
116 return df
117
118
119 if __name__ == '__main__':
120 hlm = hlm()
121 hlm.zipin("红楼梦.txt","红楼梦字频.txt")
122 df_hlm1 = hlm.main("红楼梦.txt")
123 ---------------------
124 作者:iovebecky
jieba库是python提供的一个标准的用于分词的函数库_运用jieba库分词相关推荐
- python基础教程:通过Turtle库在Python中绘制一个鼠年福鼠
这篇文章主要介绍了通过Turtle库在Python中绘制一个鼠年福鼠,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 turtle库是一个很经典的绘图库,其最初来自 ...
- python turtle 画老鼠_通过Turtle库在Python中绘制一个鼠年福鼠
turtle库是一个很经典的绘图库,其最初来自于1967年创造的logo编程语言,之后被Python编写放到了Python的内置模块中.网络上有很多借助于turtle绘制精美图像的案例.比如小猪佩奇. ...
- python中turtle画老虎_通过Turtle库在Python中绘制一个鼠年福鼠
turtle库是一个很经典的绘图库,其最初来自于1967年创造的logo编程语言,之后被Python编写放到了Python的内置模块中.网络上有很多借助于turtle绘制精美图像的案例.比如小猪佩奇. ...
- time库是python中处理时间的标准库_python语言time库和datetime库基本使用详解
今天是边复习边创作博客的第三天,我今年大二,我们专业开的有这门课程,因为喜欢所以更加认真学习,本以为没人看呢,看了后台浏览量让我更加认真创作,这篇博客花了2个半小时的时间,结合自己所学,所思,所想写作 ...
- python提供了3个常用的读文件函数、分别是,Python3 对文件操作
在计算机系统中,以硬盘为载体存储在计算机上的信息集合称为文件.文件可以是文本文档.图片.声音.程序等多种类型.在编程时经常要对文件进行读写等操作, 从程序员的视角可以把文件理解为是连续的字节序列,进行 ...
- python设计程序输出一个带文本框和图像的窗体_设计一个文本框 用户在文本框中输入什么 窗体标题就同步显示什么 怎么设计啊...
展开全部 要求 1.掌握算法的基本概念. 2.掌握基本数据结构及其操作. 3.掌握基本排序和查找算法. 4.掌握逐e68a8462616964757a686964616f31333264626533步 ...
- 标准C语言各种时间函数用法,使用c语言标准库中的时间函数
#include #include int main(void){ time_t start, finish, now; struct tm *ptr; char *c, buf1[80]; doub ...
- python语言下同一个类下有多个函数,其中一个函数想调用另外一个函数里面的变量怎么调用
一:问题,同一个类下,有多个函数,其中一个函数想调用另外一个函数里面的变量怎么调用 解决方法:在调用函数里面,初始化一下被调用的函数,然后就可以直接使用被调用函数数里面的变量了 self.被调用函数名 ...
- python 英语分词是什么意思_英语里面现在分词是什么意思
展开全部 现在分词(present participle)(又称-ing形式,现在进行式) ,是分词的一种,分词又分为现在分词和过去分词,它们e69da5e6ba9062616964757a68696 ...
- Python 2.7 学习笔记 内置语句、函数、标准库
使用任何开发语言进行软件开发,都离不开语言提供的内置库(或Api),甚至说内置库的强大及使用是否方便都会影响大家对开发语言的选择. python语言,一样提供了很多内置的功能,可供开发时使用.主要有如 ...
最新文章
- RetinaFace 人脸关键点
- mysql关联查询去重_MySQL外键和高级查询(连接查询、联合查询、子查询、去重查询)...
- LeetCode之Reverse String
- Mybatis-plus的相关文章
- BZOJ3324 : [Scoi2013]火柴棍数字
- 树堆(Treap)图文详解与实现
- linux 网络编程connection refused,《UNIX网络编程》第一个例子出现“connect error: Connection refused”错误提示信息?...
- ios模拟器安装证书
- 头像制作软件有哪些?2022微信头像制作软件推荐
- Oracle 大表数据删除/清理方法小结
- 一节双曲型方程基于MATLAB的求解,双曲方程基于matlab的数值解法
- nginx集群与高并发
- gregorian(格里高力)历转换公历
- linux命令中tar后的zxvf分别表示含义
- 【中美技术专家分享实录】微服务的挑战
- 底层网络知识详解:从二层到三层-第8讲-世界这么大,我想出网关:欧洲十国游与玄奘西行
- 多目标家庭行为检测--人脸识别模块构建
- amchart使用总结
- 讯捷FW150US Ubuntu 13.04 驱动
- 高仿京东Android App,集成React-Native热更
热门文章
- CenterOs操作
- 格签名困难假设: 最短向量问题SVP
- NOPI将数据导出至EXCEL表格
- rgb转yuv422 matlab,MATLAB读取一张RGB图片转成YUV420格式、YUV422格式、YUV444格式
- 主流数据库对比,主流数据库性能、选型对比
- 零基础入门微信小程序开发 (2020 版)
- UDS诊断系列之一 汽车诊断简介
- php require找不到文件,第一次运行Fatal error: require_once找不到文件
- 计算机查找dll文件,怎么查看进程正在调用哪些DLL文件
- MySQL数据库索引面试题(最新版)