zoukankan      html  css  js  c++  java
  • python利用jieba进行中文分词去停用词

    中文分词(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'))
  • 相关阅读:
    spring mvc 获取请求中参数方式
    23种设计模式
    Liunx-Centos下安装FFmpeg
    liunx下nginx静态服务器配置SSL证书
    JDK 1.5新特性
    搭建kubenetes集群
    centos7添加虚拟IP
    Apache+tomcat配置动静分离(一个apache一个tomcat,没有做集群)
    maven使用内嵌tomcat7
    spring集成mybatis后,打印SQL语句
  • 原文地址:https://www.cnblogs.com/52circle/p/8540511.html
Copyright © 2011-2022 走看看