0

現在、2 つのドキュメントを含むインデックスがあります (すべてが正常に機能した後にさらに追加します)。特定の用語を試してみましcalculate the dfたが、結果としてインデックス内のドキュメントの総数を常に取得しています。デバッグ目的で、1 つのドキュメントに一意の文字列を入力したため、df の結果は1になります。しかし、それは2を返します。プロセスの最後にtf/idf、インデックス内のすべての単語のスコアが必要になります。

私は次のコードを試しました:

public void calcDF (String term) throws IOException
{

     //open the index file
    Directory dir = FSDirectory.open(new File("d:/index"));
    //create a reader
    IndexReader ir = IndexReader.open(dir);
    //for debug
    System.out.println("num of docs in index : " + ir.maxDoc()); 
    Term t = new Term("content",term);
    int df = ir.docFreq(t);
} 

IndexSearcher searcher = new IndexSearcher(ir);代わりに試してみましindexReaderたが、運がありませんでした。

PS:私は使用していますlucene 3.5

4

0 に答える 0