一篇文章带你使用 jieba 提取文章的关键词

您所在的位置:网站首页 提取一段文字的关键字 一篇文章带你使用 jieba 提取文章的关键词

一篇文章带你使用 jieba 提取文章的关键词

2024-07-16 04:59| 来源: 网络整理| 查看: 265

文章目录 一、我的需求二、代码1. 将最后一列提取到文档中2. 利用 jieba 提取关键词

一、我的需求

想要在这样的一个文档里,根据最后一列内容,提取出最后一列所有内容的关键词

在这里插入图片描述 由于没怎么用过 jieba,不知道对这个文档直接操作该怎么操作(有知道的小伙伴可以告诉下怎么操作,感谢)

所以考虑先将最后一列的内容提取到一个文档里,然后再对这个文档使用 jieba 提取关键词

二、代码 1. 将最后一列提取到文档中 # 数据预处理,对原始数据进行处理,加特征,改标签 import pandas as pd # 读取数据的函数 def load_data(filename, nameList): data = pd.read_table(filename, names=nameList, sep='\t', encoding='utf8', header=None) return data # 获取热度值满足条件的内容 def get_data_content(data): # 对 ccs,fcs,lcs 进行整合成热度值特征 data['hot'] = data['ccs'] + data['fcs'] + data['lcs'] # 提取出 hot 大于25的微博内容 data = data[data['hot'] > 25] return data if __name__ == '__main__': # 读取数据 file_path = "weibo_train_data.txt" # 定义一些列的展示 nameList = ['uid', 'mid', 'time', 'fcs', 'ccs', 'lcs', 'cont'] # 调用函数进行读取数据,并且对数据进行清洗 data = load_data(file_path, nameList) data = get_data_content(data) # 保留剩余的所有内容 data.to_csv("weibo_data.txt") # 只保留内容 data = data.drop(['uid', 'mid', 'time', 'css', 'fcs', 'lcs', 'hot'], axis=1) data.to_csv("weibo_cont_data.txt", sep='\t', index=False) 2. 利用 jieba 提取关键词

基于 TF-IDF(term frequency–inverse document frequency) 算法的关键词抽取

import jieba.analyse jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())

sentence :为待提取的文本 topK: 为返回几个 TF/IDF 权重最大的关键词,默认值为 20 withWeight : 为是否一并返回关键词权重值,默认值为 False allowPOS : 仅包括指定词性的词,默认值为空,即不筛选

# 提取关键词 import jieba.analyse # 读取数据 filename = "weibo_cont_data.txt" data = open(filename, 'rt', encoding='utf-8').read() keywords =jieba.analyse.extract_tags(data, topK=20, withWeight=True, allowPOS=()) print(keywords)

其他可参考:https://blog.csdn.net/bozhanggu2239/article/details/80157305



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3