TF-IDF关键词提取算法_tfidf提取关键词

本文介绍了如何使用TF-IDF算法对文本数据进行预处理、构建词频矩阵、计算TF-IDF权重,并通过实例展示了如何提取关键词,以实现有效的内容分析和信息提取。
摘要由CSDN通过智能技术生成

TF-IDF关键词提取案例——用 TF-IDF 算法实现关键词提取。

1、数据预处理。对读取到的数据进行预处理,包括分词、去停用词和词性筛选, 处理完成后生成标记文件表示预处理部分完成

# 停用词表
stopWord = './data/stopWord.txt'
stopkey = [w.strip() for w in codecs.open(stopWord, 'rb').readlines()]

# 数据预处理操作:分词,去停用词,词性筛选
def dataPrepos(text,stopkey):
    l = []
    pos = ['n','nz','v', 'vd', 'vn', 'l', 'a', 'd'] # 定义选取的词性
    seg = jieba.posseg.cut(text) #分词
    for i in seg:
        if i.word not in stopkey and i.flag in pos:# 去停用词 + 词性筛选
            l.append(i.word)
    return l

2构建TF-IDF模型,计算TF-IDF矩阵。

● 构建词频矩阵

● 计算语料中每个词语的TF-IDF权值

● 获取词袋模型中的关键词

● 获取TF-IDF矩阵

● 完成后生成标记文件

def get_tfidf(data):
    # 1、构建词频矩阵
    vectorizer = CountVectorizer()
    X = vectorizer.fit_transform(data) # 词频矩阵,a[i][j]:表示j词在第i个文本中的词频

    # 2、统计每个词的TF-IDF权值
    transformer = TfidfTransformer()
    tfidf = transformer.fit_transform(X)

    # 3、获取词袋模型中的关键词
    word = vectorizer.get_feature_names()

    # 4、获取TF-IDF矩阵,a[i][j]表示j词在i篇文本中的TF-IDF权重
    weight = tfidf.toarray()
create__file('./data/flag3')

3、 排序输出关键词,将结果写入文件。 计算好每个词的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值