python使用jieba实现中文分词去停用词方法示例
前言
jieba 基于Python的中文分词工具,安装使用非常方便,直接pip即可,2/3都可以,功能强悍,十分推荐。
中文分词(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'))
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
下一篇: WCF连接数据库