使用Gensim获取TF-IDF分数

时间:2016-04-15 17:56:37

标签: python tf-idf gensim

我试图根据他们的TF-IDF分数在语料库中找到最重要的单词。

一直关注https://radimrehurek.com/gensim/tut2.html的例子。基于

>>> for doc in corpus_tfidf:
...     print(doc)

每次迭代都会更新TF-IDF得分。例如,

  • Word 0(“计算机”基于https://radimrehurek.com/gensim/tut1.html),TF-IDF分数为0.5773(Doc#1),0.4442(Doc#2)。
  • Word 10(“ graph ”)的TF-IDF分数为0.7071(Doc#7),0.5080(Doc#8),0.4588(Doc#9)

所以这就是我目前如何得到每个单词的最终TF-IDF分数,

tfidf = gensim.models.tfidfmodel.TfidfModel(corpus)
corpus_tfidf = tfidf[corpus]
d = {}
for doc in corpus_tfidf:
    for id, value in doc:
        word = dictionary.get(id)
        d[word] = value

有更好的方法吗?

提前致谢。

1 个答案:

答案 0 :(得分:3)

如何使用字典理解?

d = {dictionary.get(id): value for doc in corpus_tfidf for id, value in doc}