代码实现part1 中文分词

Posted 角色分布图

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码实现part1 中文分词相关的知识,希望对你有一定的参考价值。

part1 中文分词


主要步骤:

1. 列出统计词、读取小说文本

2. 将统计词加入自定义词典,实现精准分词。原因:

    1. 避免其他字干扰,例如道、向,使“张三”分成张三道、三道、三向……

    2. 由于默认分成两字,两字以上的"张三四"可能分成张三、三四

3. 分词

4. 去除停用词。耗时

5. 保存结果


import jieba

# 列出统计词
name_ls = ['张三''李四']

# 读取小说文本
with open('./小说.txt''r', encoding='utf-8'as f:
    text = f.read()

# 将统计词加入自定义词典,实现精准分词
[jieba.add_word(i, tag='d'for i in name_ls]

# 分词
words_after_jieba = jieba.lcut(text)

# 读取停用词表。可在网上下载并补充
with open('./stopwords.txt''r', encoding='utf-8'as f:
    stopwords = f.read().strip().split('\n')
# 去除停用词,以及单字的分词
word_list = []
for i in words_after_jieba:
    if len(i) > 1 and i not in stopwords:
        word_list.append(i)
    elif i in '朕':  # 保留的单字分词
        word_list.append(i)

# 保存分词结果
with open('./小说_jieba.txt''w', encoding='utf-8'as f:
    f.write('\n'.join(word_list))


编程语言: python

源码太长难看,不直接发。上块是码选有实际运行过,而且排版过程中不确定有没丢失字符串,使用时注意下

以上是关于代码实现part1 中文分词的主要内容,如果未能解决你的问题,请参考以下文章

详细步骤:用R语言做文本挖掘

分词|Python最好的中文分词库

Django全文检索实现:基于HayStack + Whoosh引擎 + Jieba中文分词

java如何分词??

HMM的中文分词方法

201671010432词频统计软件项目报告