zoukankan      html  css  js  c++  java
  • jieba分词库介绍-关键字提取

    jieba

    介绍

    jieba是优秀的中文分词第三方库中文文本需要通过分词获得单个的词语 - jieba是优秀的中文分词第三方库,需要额外安装jieba库提供三种分词模式,最简单只需掌握一个函数

    之前疫情监控系统的词云图制作过程中的分词技术就是用jieba实现的,效果图如下:

    安装方式

    直接cmd命令行进行pip安装 pip install jieba

    jieba分词的三种模式

    1. 精确模式:把文本精确的切分开,不存在冗余单词
    2. 全模式:把文本中所有可能的词语都扫描出来,有冗余
    3. 搜索引擎模式:在精确模式基础上,对长词再次切分

    jieba库常用函数

    jieba分词实例

    先看一个简单的例子:

    将下面这句话进行分词:石家庄铁道大学是一个非常好的大学,这里的一切都是美好的

    分词效果如下:

     但是可见“大学”这个词没有被分出来是什么原因呢?

    其实这里是因为设置了一个词语停用表,关键词对比过程中如果有停用表中的词可以删除不显示,分词结果我是用关键词权重前6名的词用-连接起来输出。

    停用表可以自己设置

    代码实现

     1 import jieba
     2 import jieba.analyse
     3 
     4          #第一步:分词,这里使用结巴分词全模式
     5 text = '''石家庄铁道大学是一个非常非常好的大学,这里的一切都是美好的'''
     6 fenci_text = jieba.cut(text)
     7 #print(fenci_text)
     8 
     9 #第二步:去停用词
    10 #这里是有一个文件存放要改的文章,一个文件存放停用表,然后和停用表里的词比较,一样的就删掉,最后把结果存放在一个文件中
    11 stopwords = {}.fromkeys([ line.rstrip() for line in open('D:learnpathPythonjieba_cut_textstop.txt',encoding='UTF-8') ]) #line.rstrip是用来跳过换行符号的
    12 final = ""
    13 for word in fenci_text:
    14     if word not in stopwords:
    15         if (word != "" and word != "") :
    16             final = final + " " + word
    17 #print(final)
    18 
    19 #第三步:提取关键词
    20 a=jieba.analyse.extract_tags(final, topK = 5, withWeight = False, allowPOS = ())  # text是等待提取的文本,topK:返回几个 TF/IDF 权重最大的关键词,默认值为20。
    21 b=jieba.analyse.extract_tags(final, topK = 6,   allowPOS = ())                   # withWeight:是否一并返回关键词权重值,默认值为False。
    22 
    23 context = ""
    24 for i in b:
    25     context += i+"-"
    26 context = context[0:len(context)-1]
    27 print('被分词的文本:'+text)
    28 print('分词结果:'+context)
  • 相关阅读:
    Python subprocess- call、check_call、check_output
    Java Annotation认知(包括框架图、详细介绍、示例说明) (转)
    NVME SSD vs SATA SSD(转)
    scala中“_”的用法
    maven scope 'provided' 和 ‘compile’的区别
    scala tuple中的syntactic sugar
    Scala中的"null" 和“_”来初始化对象
    scala可变长度参数(转)
    Java中的Builder模式
    Scala中“=>”用法及含义
  • 原文地址:https://www.cnblogs.com/g414056667/p/13794735.html
Copyright © 2011-2022 走看看