0
私はこのようなカテゴリでドキュメントを取得することができます:今、私はヒットでドキュメントのためTermFreqVectorを取得したいと思いますTermFreqVector luceneの.NET
IndexSearcher searcher = new IndexSearcher(dir);
Term t = new Term("category", "Feline");
Query query = new TermQuery(t);
Hits hits = searcher.Search(query);
for (int c = 0; c < hits.Length(); c++)
{
Document d = hits.Doc(c);
Console.WriteLine(c + " " + d.GetField("category").StringValue());
}
。私は通常、そうのようにこれを行うだろう:
for (int c = 0; c < searcher.MaxDoc(); c++)
{
TermFreqVector TermFreqVector = IndexReader.GetTermFreqVector(c, "content");
String[] terms = TermFreqVector.GetTerms();//get the terms
int[] freqs = TermFreqVector.GetTermFrequencies();//
}
しかし、私は私のシナリオでそれを行う方法がわからないです(つまりはただのヒットでドキュメントのためにそれらを得ます)。ドキュメントにはdb pkもあります。
ありがとうございました。
クリスチャン
感謝;:(。あなたはおそらく代わりに
HitCollector
ようなものか、別の検索オーバーロードを使用するヒットクラスは推奨されていません注意点として):だからあなたのような何かをしたいです。私はこれを見ていきます。私はLucene .Netを使用しています。ヒット数が減少するまで、おそらく時間がかかります... – cs0815
@csetzkorn:lucene.netが使用している2.9.3では公式に非推奨です。あなたはそれが3.0まで完全に削除されないということは間違いありません。 (正式にサポートされているかどうかにかかわらず、どんな場合でも遅いです。) – Xodarap