python - 列在 tfidf 矩阵中代表什么?
问题描述
我试图了解 TF-IDF 矩阵的结果。这是我正在使用的代码。
sen1 = TextBlob("This is a sample")
d1 = sen1.words
from sklearn.feature_extraction.text import TfidfVectorizer
tfvectorizer = TfidfVectorizer()
tfidf= TfidfVectorizer(tokenizer=identity_tokenizer, stop_words='english', lowercase=False)
tf = tfidf.fit_transform(d1).todense()
所以,我试图理解由此获得的 tf 矩阵。以下是 tf 矩阵的附图。
有人可以帮我,为什么我有 7 列用于 4 个单词的语料库?行表示单词的数量。
从我在不同资源中研究的结果来看,“结果是一个 tf-idf 分数矩阵,每个文档一行,列数与数据集中的不同单词一样多。” 但我无法从我在这里获得的结果中验证它。
解决方案
我可以重现你的结果。d1 变量是 ['This', 'is', 'a', 'sample']。这意味着 sklearn 将其解释为 4 个文档,然后使用字符作为单词。
你可以这样检查。
tf = tfidf.fit(d1)
tf.get_feature_names()
['T','e','h','l','m','p','s']
推荐阅读
- eclipse - Eclipse CDT - 如何显示其他文件扩展名的大纲视图
- javascript - java 脚本中的 const 数组在内存分配和分配行为中的行为是否类似于 C 中的 const 数组?
- php - 在“x”时间后重置数据库中的值
- python - 在networkx中制作边图
- sqlite - 有什么方法可以在颤振的 SQLite 表中添加大型列表项?
- bash - 更改 Applescript 的默认按钮返回的输出(来自 Bash shell)
- scala - 需要从 spark-shell 将 json 数据帧写入 avro 文件格式
- rust - 实施 Diesel 的可插入
- javascript - 当输入由 Javascript 在单击时创建并且从未使用 Selenium 附加到 HTML 文档时,如何自动选择文件?
- c# - C# Selenium frameToBeAvailableAndSwitchToIt 条件未被等待