结巴对Txt文件的分词及除去停用词
- 安装结巴:
Win+R输入CMD进入控制台,输入pip install jieba
pip install jieba
如果提醒 pip版本不够,就根据它的提醒upgrade一下
原文档:
- 上代码:
我用的是jupyter如果不知道如何进入请同上进入控制台pip install jupyter-notebook
安装完后 控制台输入jupyter-notebook。
停用词表:
import jieba#引用结巴
# 创建停用词,这里停用词表可以自己定义或者去下载一个更丰富的。
jieba.add_word('在学证明')#结巴自身添加停用词库
def stopwordslist(filepath):
stopwords = [line.strip() for line in open(filepath, 'r', encoding='utf-8').readlines()]#停用词List的创建
return stopwords
# 对句子进行分词
def seg_sentence(sentence):
sentence_seged = jieba.cut(sentence.strip())
stopwords = stopwordslist('./stop.txt') # 这里加载停用词的路径
outstr = ''
for word in sentence_seged:
if word not in stopwords:
if word != '\t':
outstr += word
outstr += " "
return outstr
inputs = open('./aaa.txt', 'r', encoding='utf-8')#这里加载待分词文本注意路径是相对路径,转成utf-8格式
outputs = open('./bbb.txt', 'w', encoding='utf-8')#这里加载待装入文本注意路径是相对路径,转成utf-8格式
for line in inputs:
line_seg = seg_sentence(line) # 这里的返回值是字符串
outputs.write(line_seg + '\n')
outputs.close()
inputs.close()
print("分词完毕")
分词后:
注意:可以自己加词库:jieba.add_word(‘需要加的停用词’)
例如:在学证明jieba库里没有
不添加上jieba.add_word(‘在学证明’)的运行结果: