sklearn 计算 tfidf 得到每个词分数

news/2024/7/24 12:17:49 标签: sklearn, tf-idf, python, TfidfVectorizer,
python">from sklearn.feature_extraction.text import TfidfVectorizer

# 语料库 可以换为其它同样形式的单
corpus = [
    list(range(-5, 5)),
    list(range(-6,4)),
    list(range(12)),
    list(range(13))]

# corpus = [
#    ['Two', 'wrongs', 'don\'t', 'make', 'a', 'right', '.'],
#    ['The', 'pen', 'is', 'mightier', 'than', 'the', 'sword'],
#    ['Don\'t', 'put', 'all', 'your', 'eggs', 'in', 'one', 'basket', '.']]
    
def dummy_fun(doc):
    return doc
    
tfidf_vec = TfidfVectorizer(
    analyzer='word',
    tokenizer=dummy_fun,
    preprocessor=dummy_fun,
    token_pattern=None)  

# 使用 fit_transform() 得到 TF-IDF 矩阵。此为 scipy 稀疏矩阵
tfidf_matrix = tfidf_vec.fit_transform(corpus)
# print(tfidf_matrix)

# 使用 get_feature_names() 得到不重复的单
print(tfidf_vec.get_feature_names_out())

# 得到每个单对应的 ID
print(tfidf_vec.vocabulary_)

在这里插入图片描述

python"># 得到 corpus 中每个得分
for i in range(len(corpus)):
    column_indexes = [tfidf_vec.vocabulary_[key] for key in corpus[i]]
    tf_idf = tfidf_matrix[i, column_indexes].toarray()[0]
    print(tf_idf)

在这里插入图片描述
参考:
Applying scikit-learn TfidfVectorizer on tokenized text
sklearn.feature_extraction.text.TfidfVectorizer


http://www.niftyadmin.cn/n/5354019.html

相关文章

【每日一题】YACS 473:栈的判断

这是上海计算机学会竞赛 P 473 P473 P473:栈的判断( 2021 2021 2021年 8 8 8月月赛 丙组 T 4 T4 T4)标签:栈题意:给定 n n n个数字,已知这些数字的入栈顺序为 1 , 2 , 3... , n 1,2,3...,n 1,2,3...,n&…

CTF CRYPTO 密码学-7

题目名称:敲击 题目描述: 让我们回到最开始的地方 0110011001101100011000010110011101111011011000110110010100110011011001010011010100110000001100100110001100101101001101000011100001100011001110010010110100110100011001000011010100110000…

【C语言/数据结构】排序(归并排序|计数排序|排序算法复杂度)

🌈个人主页:秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343🔥 系列专栏:《数据结构》https://blog.csdn.net/qinjh_/category_12536791.html?spm1001.2014.3001.5482 ​​​​ 目录 归并排序 代码实现&#xf…

【MyBatis】快速入门MyBatis(保姆式教学),你值得一看

文章目录 📄前言一. Mybatis简介✈️1. 什么是Mybatis🚀2. 为什么使用Mybatis 二. Mybatis快速入门🍆1. mybatis使用前准备1.1 创建springboot项目并引入相关依赖1.2 在 application.ym中进行数据源的配置1.3 创建数据表,准备表数…

C语言数据在内存中的存储和结构体联合体枚举

1.无符号整形提升时,直接补零 2.char类型的取值范围是-128~127 无符号的话是0~255 3.要直接打印时也是先提升后打印 4.int就是十进制 5.1E10就是1乘以10的10次方 6.浮点数存储会存在误差,所以要相减然后用这个值比较某个范围 7.匿名结构体只能用一次,就是在全局变量那里…

探索数字经济:从基础到前沿的奇妙旅程

新一轮技术革命方兴未艾,特别是以人工智能、大数据、物联网等为代表的数字技术革命,催生了一系列新技术、新产业、新模式,深刻改变着世界经济面貌。数字经济已成为重组全球要素资源、重塑全球经济结构、改变全球竞争格局的关键力量。预估到20…

java自动化之创建自动化框架项目(第一天)

1.前言 idea版本为2023.2 java版本为17.0.9 技术栈: javase:封装、泛型、反射、jdbc等 testng:开源测试框架,是从Junit继承而来 httpclient:java提供的与服务端http接口进行交互的库 fastjson:处理js…

深度强化学习(王树森)笔记09

深度强化学习(DRL) 本文是学习笔记,如有侵权,请联系删除。本文在ChatGPT辅助下完成。 参考链接 Deep Reinforcement Learning官方链接:https://github.com/wangshusen/DRL 源代码链接:https://github.c…