在 TfidfVectorizer() 中输入文档项频率矩阵?

Inputting document-term frequency matrix in TfidfVectorizer()?

我正在想出一个来自三个文档的词袋示例(我正在演示 tf-idf 如何在给定文档项频率矩阵的情况下工作),我想将我的 bow 矩阵转换为tf-idf 矩阵。我实际上没有文本数据,只有我在示例中编造的数字?我如何使用它来生成 tf-idf 输出?我在最后一行收到错误消息“'numpy.ndarray' 对象没有属性 'lower'”(我假设这是因为 fit_transform 需要文本数据。是否可以指定或以某种方式覆盖它?

bow = np.array([[15,0,5,0,20], [20,30,0,25,0], [15,10,10,20,15]])
vectorizer = TfidfVectorizer()
vectorizer.fit_transform(bow)

您可以使用 TfidfTransformer 代替 TfidfVectorizer。

from sklearn.feature_extraction.text import TfidfTransformer
import numpy as np

bow = np.array([[15,0,5,0,20], [20,30,0,25,0], [15,10,10,20,15]])
transformer = TfidfTransformer()
transformer.fit_transform(bow)