使用Scikit Learn中的TF-IDF向量化器,从计数数据框开始。

5
我有一个涵盖一系列文档中单词计数的Pandas数据帧。我能用 sklearn.feature_extraction.text.TfidfVectorizer 将其应用于这个数据帧,以返回一个术语-文档矩阵吗?
import pandas as pd

a = [1,2,3,4]
b = [1,3,4,6]
c = [3,4,6,1]

df = pd.DataFrame([a,b,c])

我该如何获得df中tf-idf计数的版本?
1个回答

5

像这样:

from sklearn.feature_extraction.text import TfidfTransformer
tfidf =TfidfTransformer(norm=u'l2', use_idf=True, smooth_idf=True, sublinear_tf=False)
data =tfidf.fit_transform(df.values)

这将返回一个tfidf值的稀疏矩阵。您可以将它们转换为密集矩阵并将它们放回到数据框中,如下所示:

pd.DataFrame(data.todense())

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接