簡體   English   中英

如何在python中的gensim中獲取tf-idf值

[英]How to get the tf-idf values in gensim in python

我正在使用genism計算我的tf-idf值,如下所示。

texts = [['human', 'interface', 'computer'],
 ['survey', 'user', 'computer', 'system', 'response', 'time'],
 ['eps', 'user', 'interface', 'system'],
 ['system', 'human', 'system', 'eps'],
 ['user', 'response', 'time'],
 ['trees'],
 ['graph', 'trees'],
 ['graph', 'minors', 'trees'],
 ['graph', 'minors', 'survey']]

dictionary = corpora.Dictionary(texts)
corpus = [dictionary.doc2bow(text) for text in texts]
tfidf = models.TfidfModel(corpus)

現在,我想獲得tf-idf值最高的3個單詞。 請幫我!

經過一番搜索后,您似乎可能需要這樣做-雖然不是最易讀,但可能會起作用。

top_3 = [t[0] for t in
         sorted([(word, i, j) for j, text in enumerate(texts) for i, word in enumerate(text)],
                key=lambda t: tfidf[t[2]][t[1]])[:3]]

我從文本中選取(word, i, j)並使用形式為(word, i, j)的元組跟蹤它們的行(如i)和列(如(word, i, j) 然后,我根據單詞在tfidf的值對單詞進行排序。 然后,我取前3位(使用[:3] ),並用t[0] for t in ...將該單詞從元組中取出,表示t[0] for t in ...

可以輕松地對其進行修改以按順序存儲任意數量的單詞。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM