在TFIDF sklearn中对功能进行排名

时间:2016-07-11 01:26:36

标签: python scikit-learn information-retrieval tf-idf

我使用了sklearn TFIDFVectorizer来从给定的文档集构建权重矩阵。我想使用基于查询条款的排名函数来执行查询,它可以是一个简单的函数,如查询中术语权重的总和。

有没有办法在sklearn中进行此类查询(最好是以有效的方式)?或者可能是一个python框架来处理这种工作。

到目前为止,我得到的是以下内容:

import pandas as pd
import numpy as np

screen_name_unique = list(set(dataframe1['name']))
for name in screen_name_unique:
   dataframe_text = dataframe1[dataframe1.name == name]
   count = noun_count(dataframe['text'])



 def noun_count (str):
    words_len = len(str)
    return words_len

所以我根据查询中的条款对项目进行排序。但我想知道是否有内置的方法来做到这一点,当然,更有效率。因为对每个查询进行排序不是一个包含大量请求的选项。

1 个答案:

答案 0 :(得分:0)

这个问题可能过于宽泛,我最终使用像lucene这样的框架,以非常有效的方式处理文档搜索和索引,而不是通过计算tf-idf矩阵的天真方法。