• 多版本中文停用词词表 + 多版本英文停用词词表 + python词表合并程序


    文章简介与更新记录

    如果你只想获取中文停用词此表,请直接到文章结尾下载项目文件,其中包括三个中文停用词词表,一个英文停用词词表和一个合并词表的.py文件

    • 2017/07/04 创建文章,上传文件
    • 2017/07/04 更新了合并代码,添加了新的中文停用词表(哈工大扩展版本)和一个新的停用词表,现在最全的中文停用词表为1927,添加了英文和中英文停用词表英文停用词词表为1199

    停用词

    在进行汉语自然语言处理时候,分词是必不可少的环节,但是在实际的自然语言中,有很多的非实意词语或者其他并没有实际作用的词语,这些词语我们必须在分词环节后进行过滤—这个环节也就是过滤停用词.不过想要获得好的分词效果,必须首先进行比较好的分词处理.这一点也是十分重要的.

    python合并中文停用词词表的代码

    # - * - coding: utf - 8 -*-
    #
    # 作者:田丰(FontTian)
    # 创建时间:'2017/7/4'
    # 邮箱:fonttian@Gmaill.com
    # CSDN:http://blog.csdn.net/fontthrone
    import sys
    
    reload(sys)
    sys.setdefaultencoding('utf-8')
    
    
    # 获取停用词的List
    def GetListOfStopWords(filepath):
        f_stop = open(filepath)
        try:
            f_stop_text = f_stop.read()
            f_stop_text = unicode(f_stop_text, 'utf-8')
        finally:
            f_stop.close()
        f_stop_seg_list = f_stop_text.split('
    ')
    
        return f_stop_seg_list
    
    
    # 保存List
    def SaveFile(list, filename):
        f_stop = open(filename, 'w')
        for item in range(len(list)):
            if item != len(list):
                f_stop.writelines((list[item].encode('utf-8')) + '
    ')
            else:
                f_stop.writelines(list[item].encode('utf-8'))
        f_stop.close()
    
    
    # 求List并集
    def GetListUnion(listName):
        ListUnion = ['!']
        for item in listName:
            # print item
            ListUnion.extend(GetListOfStopWords(item))
        return list(set(ListUnion))
    
    
    def GetStopWords(listOfFileName, FileName='CNstopwords.txt', keynumber=1):
        stopwords_pathCN = 'CNstopwords.txt'  # 默认中文总表 1
        stopwords_pathEN = 'ENstopwords.txt'  # 默认英文总表 2
        stopwords_pathCNEN = 'CNENstopwords.txt'  # 默认中英文混合总表 4
        if keynumber == 1:
            listOfFileName.append(stopwords_pathCN)
        elif keynumber == 2:
            listOfFileName.append(stopwords_pathEN)
        elif keynumber == 3:
            listOfFileName.append(stopwords_pathCN)
            listOfFileName.append(stopwords_pathEN)
        elif keynumber == 5:
            listOfFileName.append(stopwords_pathCN)
            listOfFileName.append(stopwords_pathCNEN)
        elif keynumber == 6:
            listOfFileName.append(stopwords_pathEN)
            listOfFileName.append(stopwords_pathCNEN)
        elif keynumber == 7:
            listOfFileName.append(stopwords_pathCN)
            listOfFileName.append(stopwords_pathEN)
            listOfFileName.append(stopwords_pathCNEN)
        else:
            listOfFileName.append(stopwords_pathCN)
            print 'The keynumber is wrong,chage keynumber to 1 '
    
            listOfFileName.append(stopwords_pathCNEN)
        ListUnion = GetListUnion(listOfFileName)
        SaveFile(ListUnion, FileName)
    
    
    '''
    stopwords_pathCN = 'CNstopwords.txt' # 默认中文总表 1
    stopwords_pathEN = 'CNstopwords.txt' # 默认英文总表 2
    stopwords_pathCNEN = 'CNstopwords.txt' # 默认中英文混合总表 4
    '''
    
    listOfFileName = []
    
    # 需要添加的 中文 停用词词表
    stopwords_path1 = 'stopwords1893.txt'
    stopwords_path2 = 'stopwords1229.txt'
    stopwords_path3 = 'stopwordshagongdakuozhan.txt'
    stopwords_path4 = 'stop_words_zh.txt'
    
    # 需要添加的 英文 停用词词表
    stopwords_path5 = 'stop_words_eng.txt'
    stopwords_path6 = 'ENstopwords891.txt'
    
    # 需要添加的 中文 停用词词表路径
    # listOfFileName.append(stopwords_path1)
    # listOfFileName.append(stopwords_path2)
    # listOfFileName.append(stopwords_path3)
    # listOfFileName.append(stopwords_path4)
    
    # 需要添加的 英文 停用词词表路径
    listOfFileName.append(stopwords_path5)
    listOfFileName.append(stopwords_path6)
    
    GetStopWords(listOfFileName, FileName='ENstopwords.txt', keynumber=2)
    

    百度云下载所有文件

    下载地址:http://pan.baidu.com/s/1dFjDj3r

  • 相关阅读:
    海选女主角
    发工资咯:)
    绝对值排序
    数列有序!
    母牛的故事
    一文看懂外汇风险准备金率调整为 20%的含义
    1080i减少带宽
    为什么要采用隔行扫描?
    720P、1080P、4K是什么意思?
    VBR一次編碼 v.s 二次編碼(VBR 1-pass vs 2-pass)
  • 原文地址:https://www.cnblogs.com/fonttian/p/7294815.html
Copyright © 2020-2023  润新知