Skip to content

Commit 24db5c6

Browse files
committed
Add TF-IDF based ranking
1 parent 37f91eb commit 24db5c6

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

ranking/tf_idf_ranker.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import operator
2+
3+
from ranking import Ranker
4+
5+
6+
class TfIdfRanker(Ranker):
7+
8+
@staticmethod
9+
def get_top_docs(index, tokens):
10+
documents = {}
11+
for token in tokens:
12+
relevant_docs = index.get_docs_for_token(token)
13+
for doc_id, freq in relevant_docs:
14+
if doc_id not in documents:
15+
documents[doc_id] = 0.
16+
documents[doc_id] += freq * index.idf(token)
17+
return sorted(documents.items(), key=operator.itemgetter(1), reverse=True)

0 commit comments

Comments
 (0)