jieba库的原理是将一个中文词库,将带分词的内容与分词词库进行比对,通过图结构和动态规划方法找到最大概率的词组。除了分词jieba还提供增加自定义中文单词的功能,本次题目的要求是将文本分词并统计某个词的出现频次。
目录
目录
2.要求二:对分词结果进行分析,并且统计输出某特定次的出现次数
前言
结巴支持三种模式:精确模式、全模式、搜索引擎模式
1.jieba.lcut(s) 精准模式中文分词 返回结果是列表类型
2.jieba.lcut(s,cut_all=True)全模式 所有分词可能都会被列出来
3.jieba.lcutforsearch(s),首先进行精确模式,然后再对长词进行进一步切分
本题的要求很简单,只是分词并进行统计,一般来说都是用精确模式分词。
一、思路
关于分词,只需要读取文本,并利用jieba库的精确模式分词得出列表,再而频次就是题目1和题目2教过的,有兴趣可以翻阅前几章内容。
二、步骤
1.要求一:引入库,并进行分词处理
代码如下(示例):
import jieba
f = open('data.txt','r')
lines = f.readlines()
f.close()
f = open('out.txt','w')
for line in lines:
line =line.strip('\n') #删除每行首尾可能出现的空格(或者换行)
wordList =jieba.lcut(line) #用结巴分词,对每行内容进行分词
f.writelines('\n'.join(wordList)) #将分词结果存到文件out.txt中
f.close()
wordlist返回的是列表,一般用join函数进行存储,每一个词换一个行。
2.要求二:对分词结果进行分析,并且统计输出某特定次的出现次数
代码如下(示例):
import jieba
f=open('out.txt','r')
txt=f.readlines()
d={}
for word in txt:
if '曹操' in word:
d['曹操']=d.get('曹操',0)+1
print('曹操出现的次数是:{}'.format(d['曹操']))
唯一比较有难点就是索引了,这里不能用整数索引,而是通过键的名称索引
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。