使用方法:
读取分过词的文本到一个可迭代的容器中
加载模块并使用
text_features就是得到的TF-IDF矩阵,是一个稀疏矩阵
查看词典中的词
字典和TF-IDF矩阵的对应关系
字典vectorizer.vocabulary_中每一个词对应 TF-IDF矩阵中的一列,text中的每个句子对应text_features的一行
因为text_features是一个稀疏矩阵,不能像二维数组那样直接通过索引访问元素(可以用text_featurs.toarray()转换为数组, 不过会占用很多内存)
也可以使用 text_features.getcol(index) 或 text_features.getrow(index)获取某列或某行的值
text,text_features, vectorizer.vocabulary关系分析
从这张图片可以看出,对于每个句子,会在text_features中有一行。每个词会占据text_features的一列。text_features的第i行表示,text中第i个句子中的每个词的TF-IDF值
通过对比上图发现,同一个词在不同句子中的TF-IDF值是不同的,是L2归一化的缘故,详见4.2. 特征提取 — scikit-learn 0.19.0 中文文档 - ApacheCN
取某一行中某个元素的值
不进行归一化时,同一个词在不同句子中的 TF-IDF值是相同的