菜单

python利用jieba举行中文分词去停用词

2019年5月4日 - 皇家赌场系统

中文分词(Chinese Word Segmentation) 指的是将一个汉字序列切分成一个一个单独的词。

分词模块jieba,它是python比较好用的分词模块。待分词的字符串可以是 unicode 或 UTF-8 字符串、GBK 字符串。注意:不建议直接输入 GBK 字符串,可能无法预料地错误解码成 UTF-8

支持三种分词模式

1 精确模式,试图将句子最精确地切开,适合文本分析;

2 全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;

3 搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。

 

# 精确模式 seg_list = jieba.cut("我去过清华大学和北京大学。")

# 全模式 seg_list = jieba.cut("我去过清华大学和北京大学。", cut_all=True)

# 搜索引擎模式 seg_list = jieba.cut_for_search("我去过清华大学和北京大学。")

 

#精确模式: 我/ 去过/ 清华大学/ 和/ 北京大学/ 。

#全模式: 我/ 去过/ 清华/ 清华大学/ 华大/ 大学/ 和/ 北京/ 北京大学/ 大学/ /

#搜索引擎模式: 我/ 去过/ 清华/ 华大/ 大学/ 清华大学/ 和/ 北京/ 大学/ 北京大学/

#coding=utf-8
import jieba. analyse
stopwords=[]
for word in open('stopwords.txt','r'):
    stopwords.append(word.strip())
article=open('1.txt','r').read()
words=jieba.cut(article,cut_all=False)
stayed_line=""
for word in words:
    if word.encode("utf-8")not in stopwords:
        stayed_line+=word+" "
print stayed_line

w=open('2.txt','w')
w.write(stayed_line.encode('utf-8'))

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图