jieba|jieba分词和高频词提取示例代码

import jieba import jieba.analyse as aly# 中文 分词工具jieba sent = '中文分词是文本处理不可或缺的一步!' seglist = jieba.cut(sent, cut_all=True) print("全模式", '/'.join(seglist)) # 全模式 中文/分词/是/文本/文本处理/本处/处理/不可/不可或缺/或缺/的/一步// seglist = jieba.cut(sent) print("精确模式", '/'.join(seglist)) # 精确模式 中文/分词/是/文本处理/不可或缺/的/一步/! seglist = jieba.cut_for_search(sent) print("搜索引擎模式", '/'.join(seglist)) # 中文/分词/是/文本/本处/处理/文本处理/不可/或缺/不可或缺/的/一步/!# 高频词读取TF/IDFcontent = "自然语言处理(NLP)是计算机科学,人工智能,语言学关注计算机和人类(自然)语言之间的相互作用的领域。" \ "因此,自然语言处理是与人机交互的领域有关的。在自然语言处理面临很多挑战,包括自然语言理解," \ "因此,自然语言处理涉及人机交互的面积。在NLP诸多挑战涉及自然语言理解,即计算机源于人为或自然语言输入的意思," \ "和其他涉及到自然语言生成."# 加载自定义idf词典\n", aly.set_idf_path('D:\\yangyang\\spy\\nltksample\\103\\idf.txt.big') # 加载停用词典\n", aly.set_stop_words('.\\stop_words.utf8') # 第一个参数:待提取关键词的文本\n", # 第二个参数:返回关键词的数量,重要性从高到低排序\n", # 第三个参数:是否同时返回每个关键词的权重\n", # 第四个参数:词性过滤,为空表示不过滤,若提供则仅返回符合词性要求的关键词\n" keywords = aly.extract_tags(content, topK=10, withWeight=True, allowPOS=()) # 分别为关键词和相应的权重\n", for item in keywords: print(item[0], item[1])# 自然语言 2.0790900005043476 # NLP 0.5197725001260869 # 计算机 0.5197725001260869 # 领域 0.5197725001260869 # 人机交互 0.5197725001260869 # 挑战 0.5197725001260869 # 理解 0.5197725001260869 # 处理 0.4705091875965217 # 涉及 0.3839134341652174 # 人工智能 0.25988625006304344# # 第一个参数:待提取关键词的文本\n", #"# 第二个参数:返回关键词的数量,重要性从高到低排序\n", #"# 第三个参数:是否同时返回每个关键词的权重\n", #"# 第四个参数:词性过滤,为空表示过滤所有,与TF—IDF不一样!\n keywords = aly.textrank(content, topK=10, withWeight=True, allowPOS=('ns', 'n', 'vn', 'v')) # 分别为关键词和相应的权重\n", print(',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,') for item in keywords: print(item[0], item[1])# 涉及 1.0 # 计算机 0.9618169519358478 # 处理 0.8124660402732825 # 理解 0.7885898958379202 # 挑战 0.7833575495518058 # 人机交互 0.7343470452632993 # 语言学 0.727536034596871 # 人类 0.6290562193534068 # 人工智能 0.5809911385488661 # 关注 0.577881611632419

【jieba|jieba分词和高频词提取示例代码】

    推荐阅读