我是靠谱客的博主 友好路灯,最近开发中收集的这篇文章主要介绍中文文本处理总结(读取文本、文本预处理、分词、去除停用词),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

中文文本处理总结(读取文本、文本预处理、分词、去除停用词)

 针对前面学习的 Python读取文本内容、中文文本预处理、利用jieba对中文进行分词、中文分词后去除停用词、调整jieba分词结果,我们已经掌握了中文文本处理的各个步骤的方法,现在对以上学习的知识做个总结,用一个例子把它们汇总在一起,完成对中文的文本处理:

import jieba
import re
import jieba.posseg as pseg

filename = '白雪公主片段'    
filepath1 = 'D:/大学工作所做文档/学习资料/毕业设计学习准备/编程学习/白雪公主片段.txt'
filepath2 = 'D:/大学工作所做文档/学习资料/毕业设计学习准备/编程学习/stop_words.txt' 

def stopwordslist(filepath2):    # 定义函数创建停用词列表
    stopword = [line.strip() for line in open(filepath2, 'r').readlines()]    #以行的形式读取停用词表,同时转换为列表
    return stopword

def pretext(filename,filepath1):     #定义函数
    try:
        with open(filepath1,encoding='UTF-8') as file:
            contents = file.read()                      #读取文本文件
            print('【读取的文本为:】'+'n'+contents)
            
            content1 = contents.replace(' ','')     # 去掉文本中的空格
            print('n【去除空格后的文本:】'+'n'+content1)
            
            pattern = re.compile("[^u4e00-u9fa5^a-z^A-Z^0-9]")    #只保留中英文、数字,去掉符号
            content2= re.sub(pattern,'',content1)      #把文本中匹配到的字符替换成空字符
            print('n【去除符号后的文本:】'+'n'+ content2)
            
    except FileNotFoundError: 
        message = "Sorry, the file " + filename + " does not exist." 
        print(message)
        
    else:
        cutwords = jieba.lcut(content2,cut_all=False)    #精确模式分词
        print ('n【精确模式分词后:】'+ 'n'+"/".join(cutwords)) 
        
        stopwords = stopwordslist(filepath2)     # 这里加载停用词的路径
        words = ''
        for word in cutwords:     #for循环遍历分词后的每个词语
            if word not in stopwords:     #判断分词后的词语是否在停用词表内
                if word != 't':
                    words += word
                    words += "/"
        print('n【去除停用词后的分词:】'+ 'n'+ words) 
        content3 = words.replace('/','')     # 去掉文本中的斜线
        
        lastword = pseg.lcut(content3)      #使用for循环逐一获取划分后的词语进行词性标注
        print('n【对去除停用词后的分词进行词性标注:】'+ 'n')
        print([(words.word,words.flag) for words in lastword])    #转换为列表
        
stopwordslist(filepath2)  #调用函数
pretext(filename,filepath1)   #调用函数

运行结果:

【读取的文本为:】
    镜中的她有着棕黄色的头发, 直挺的鼻梁,以及如同大理石般的白色肌肤……。皇后非常重视肌肤的保养,不惜重金从先进的法国买来护肤的配方,并使用各种草药制成油膏,每天早上都给肌肤做最好的按摩。  然而岁月不饶人,皇后的美貌、是有衰退的一天。  不知从何时开始,皇后的肌肤已逐渐松弛, 眼角出现了细纹,而国王也似乎不再那么的享受鱼水之欢了;看来,国王已经对皇后不再感兴趣。 
  皇后当然也听说过国王想在 贵族千金 中寻找宠妃的传闻,因为在不打仗的时候,即使留在城内,国王也把大部分时间都花在探访皇亲国威上。 

【去除空格后的文本:】
镜中的她有着棕黄色的头发,直挺的鼻梁,以及如同大理石般的白色肌肤……。皇后非常重视肌肤的保养,不惜重金从先进的法国买来护肤的配方,并使用各种草药制成油膏,每天早上都给肌肤做最好的按摩。然而岁月不饶人,皇后的美貌、是有衰退的一天。不知从何时开始,皇后的肌肤已逐渐松弛,眼角出现了细纹,而国王也似乎不再那么的享受鱼水之欢了;看来,国王已经对皇后不再感兴趣。
  皇后当然也听说过国王想在贵族千金中寻找宠妃的传闻,因为在不打仗的时候,即使留在城内,国王也把大部分时间都花在探访皇亲国威上。

【去除符号后的文本:】
镜中的她有着棕黄色的头发直挺的鼻梁以及如同大理石般的白色肌肤皇后非常重视肌肤的保养不惜重金从先进的法国买来护肤的配方并使用各种草药制成油膏每天早上都给肌肤做最好的按摩然而岁月不饶人皇后的美貌是有衰退的一天不知从何时开始皇后的肌肤已逐渐松弛眼角出现了细纹而国王也似乎不再那么的享受鱼水之欢了看来国王已经对皇后不再感兴趣皇后当然也听说过国王想在贵族千金中寻找宠妃的传闻因为在不打仗的时候即使留在城内国王也把大部分时间都花在探访皇亲国威上

【精确模式分词后:】
镜中/的/她/有着/棕黄色/的/头发/直挺/的/鼻梁/以及/如同/大理石/般的/白色/肌肤/皇后/非常重视/肌肤/的/保养/不惜重金/从/先进/的/法国/买来/护肤/的/配方/并/使用/各种/草药/制成/油膏/每天/早上/都/给/肌肤/做/最好/的/按摩/然而/岁月不饶人/皇后/的/美貌/是/有/衰退/的/一天/不知/从/何时/开始/皇后/的/肌肤/已/逐渐/松弛/眼角/出现/了/细纹/而/国王/也/似乎/不再/那么/的/享受/鱼水之欢/了/看来/国王/已经/对/皇后/不再/感兴趣/皇后/当然/也/听说/过/国王/想/在/贵族/千金/中/寻找/宠妃/的/传闻/因为/在/不/打仗/的/时候/即使/留在/城内/国王/也/把/大部分/时间/都/花/在/探访/皇亲/国威/上

【去除停用词后的分词:】
镜中/有着/棕黄色/头发/直挺/鼻梁/如同/大理石/般的/白色/肌肤/皇后/非常重视/肌肤/保养/不惜重金/先进/法国/买来/护肤/配方/使用/草药/制成/油膏/每天/早上/肌肤/最好/按摩/岁月不饶人/皇后/美貌/衰退/一天/不知/皇后/肌肤/逐渐/松弛/眼角/出现/细纹/国王/似乎/享受/鱼水之欢/国王/皇后/感兴趣/皇后/听说/国王/贵族/千金/寻找/宠妃/打仗/留在/城内/国王/大部分/时间/探访/皇亲/国威/

【对去除停用词后的分词进行词性标注:】

[('镜', 'ng'), ('中', 'f'), ('有着', 'v'), ('棕黄色', 'n'), ('头发', 'n'), ('直挺', 'z'), ('鼻梁', 'n'), ('如同', 'd'), ('大理石', 'n'), ('般的', 'u'), ('白色', 'n'), ('肌肤', 'n'), ('皇后', 'n'), ('非常重视', 'l'), ('肌肤', 'n'), ('保养', 'v'), ('不惜重金', 'l'), ('先进', 'a'), ('法国', 'ns'), ('买来', 'v'), ('护肤', 'n'), ('配方', 'n'), ('使用', 'v'), ('草药', 'n'), ('制成', 'v'), ('油膏', 'n'), ('每天', 'r'), ('早上', 't'), ('肌肤', 'n'), ('最好', 'a'), ('按摩', 'v'), ('岁月不饶人', 'l'), ('皇后', 'n'), ('美貌', 'nz'), ('衰退', 'v'), ('一天', 'm'), ('不知', 'v'), ('皇后', 'n'), ('肌肤', 'n'), ('逐渐', 'd'), ('松弛', 'a'), ('眼角', 'n'), ('出现', 'v'), ('细纹', 'n'), ('国王', 'n'), ('似乎', 'd'), ('享受', 'v'), ('鱼水之欢', 'i'), ('国王', 'n'), ('皇后', 'n'), ('感兴趣', 'n'), ('皇后', 'n'), ('听说', 'v'), ('国王', 'n'), ('贵族', 'n'), ('千金', 'n'), ('寻找', 'v'), ('宠妃', 'n'), ('打仗', 'v'), ('留在', 'v'), ('城内', 's'), ('国王', 'n'), ('大部分', 'm'), ('时间', 'n'), ('探访', 'v'), ('皇亲', 'n'), ('国威', 'n')]

即:

【读取的文本为:】
镜中的她有着棕黄色的头发, 直挺的鼻梁,以及如同大理石般的白色肌肤……。皇后非常重视肌肤的保养,不惜重金从先进的法国买来护肤的配方,并使用各种草药制成油膏,每天早上都给肌肤做最好的按摩。 然而岁月不饶人,皇后的美貌、是有衰退的一天。 不知从何时开始,皇后的肌肤已逐渐松弛, 眼角出现了细纹,而国王也似乎不再那么的享受鱼水之欢了;看来,国王已经对皇后不再感兴趣。
  皇后当然也听说过国王想在 贵族千金 中寻找宠妃的传闻,因为在不打仗的时候,即使留在城内,国王也把大部分时间都花在探访皇亲国威上。

【去除空格后的文本:】
镜中的她有着棕黄色的头发,直挺的鼻梁,以及如同大理石般的白色肌肤……。皇后非常重视肌肤的保养,不惜重金从先进的法国买来护肤的配方,并使用各种草药制成油膏,每天早上都给肌肤做最好的按摩。然而岁月不饶人,皇后的美貌、是有衰退的一天。不知从何时开始,皇后的肌肤已逐渐松弛,眼角出现了细纹,而国王也似乎不再那么的享受鱼水之欢了;看来,国王已经对皇后不再感兴趣。
  皇后当然也听说过国王想在贵族千金中寻找宠妃的传闻,因为在不打仗的时候,即使留在城内,国王也把大部分时间都花在探访皇亲国威上。

【去除符号后的文本:】
镜中的她有着棕黄色的头发直挺的鼻梁以及如同大理石般的白色肌肤皇后非常重视肌肤的保养不惜重金从先进的法国买来护肤的配方并使用各种草药制成油膏每天早上都给肌肤做最好的按摩然而岁月不饶人皇后的美貌是有衰退的一天不知从何时开始皇后的肌肤已逐渐松弛眼角出现了细纹而国王也似乎不再那么的享受鱼水之欢了看来国王已经对皇后不再感兴趣皇后当然也听说过国王想在贵族千金中寻找宠妃的传闻因为在不打仗的时候即使留在城内国王也把大部分时间都花在探访皇亲国威上

【精确模式分词后:】
镜中/的/她/有着/棕黄色/的/头发/直挺/的/鼻梁/以及/如同/大理石/般的/白色/肌肤/皇后/非常重视/肌肤/的/保养/不惜重金/从/先进/的/法国/买来/护肤/的/配方/并/使用/各种/草药/制成/油膏/每天/早上/都/给/肌肤/做/最好/的/按摩/然而/岁月不饶人/皇后/的/美貌/是/有/衰退/的/一天/不知/从/何时/开始/皇后/的/肌肤/已/逐渐/松弛/眼角/出现/了/细纹/而/国王/也/似乎/不再/那么/的/享受/鱼水之欢/了/看来/国王/已经/对/皇后/不再/感兴趣/皇后/当然/也/听说/过/国王/想/在/贵族/千金/中/寻找/宠妃/的/传闻/因为/在/不/打仗/的/时候/即使/留在/城内/国王/也/把/大部分/时间/都/花/在/探访/皇亲/国威/上

【去除停用词后的分词:】
镜中/有着/棕黄色/头发/直挺/鼻梁/如同/大理石/般的/白色/肌肤/皇后/非常重视/肌肤/保养/不惜重金/先进/法国/买来/护肤/配方/使用/草药/制成/油膏/每天/早上/肌肤/最好/按摩/岁月不饶人/皇后/美貌/衰退/一天/不知/皇后/肌肤/逐渐/松弛/眼角/出现/细纹/国王/似乎/享受/鱼水之欢/国王/皇后/感兴趣/皇后/听说/国王/贵族/千金/寻找/宠妃/打仗/留在/城内/国王/大部分/时间/探访/皇亲/国威/

【对去除停用词后的分词进行词性标注:】

[(‘镜’, ‘ng’), (‘中’, ‘f’), (‘有着’, ‘v’), (‘棕黄色’, ‘n’), (‘头发’, ‘n’), (‘直挺’, ‘z’), (‘鼻梁’, ‘n’), (‘如同’, ‘d’), (‘大理石’, ‘n’), (‘般的’, ‘u’), (‘白色’, ‘n’), (‘肌肤’, ‘n’), (‘皇后’, ‘n’), (‘非常重视’, ‘l’), (‘肌肤’, ‘n’), (‘保养’, ‘v’), (‘不惜重金’, ‘l’), (‘先进’, ‘a’), (‘法国’, ‘ns’), (‘买来’, ‘v’), (‘护肤’, ‘n’), (‘配方’, ‘n’), (‘使用’, ‘v’), (‘草药’, ‘n’), (‘制成’, ‘v’), (‘油膏’, ‘n’), (‘每天’, ‘r’), (‘早上’, ‘t’), (‘肌肤’, ‘n’), (‘最好’, ‘a’), (‘按摩’, ‘v’), (‘岁月不饶人’, ‘l’), (‘皇后’, ‘n’), (‘美貌’, ‘nz’), (‘衰退’, ‘v’), (‘一天’, ‘m’), (‘不知’, ‘v’), (‘皇后’, ‘n’), (‘肌肤’, ‘n’), (‘逐渐’, ‘d’), (‘松弛’, ‘a’), (‘眼角’, ‘n’), (‘出现’, ‘v’), (‘细纹’, ‘n’), (‘国王’, ‘n’), (‘似乎’, ‘d’), (‘享受’, ‘v’), (‘鱼水之欢’, ‘i’), (‘国王’, ‘n’), (‘皇后’, ‘n’), (‘感兴趣’, ‘n’), (‘皇后’, ‘n’), (‘听说’, ‘v’), (‘国王’, ‘n’), (‘贵族’, ‘n’), (‘千金’, ‘n’), (‘寻找’, ‘v’), (‘宠妃’, ‘n’), (‘打仗’, ‘v’), (‘留在’, ‘v’), (‘城内’, ‘s’), (‘国王’, ‘n’), (‘大部分’, ‘m’), (‘时间’, ‘n’), (‘探访’, ‘v’), (‘皇亲’, ‘n’), (‘国威’, ‘n’)]

 后面的学习将进行英文的分词处理以及关键词的筛选,谢谢你的阅读!

最后

以上就是友好路灯为你收集整理的中文文本处理总结(读取文本、文本预处理、分词、去除停用词)的全部内容,希望文章能够帮你解决中文文本处理总结(读取文本、文本预处理、分词、去除停用词)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部