[lucene] lucene词条的频率
wgxin
2010-03-05
lucene建立倒排索引的时候,对于每个term,该term在每个document中出现的频率会记录在索引文件中。在检索的时候,怎么才能得到这个频率呢?
|
|
illu
2010-03-05
1.创建Field时 需要Field.TermVector.YES 用来保存Field的TermVector
2.检索的时候 IndexReader.getTermFreqVector 就可以拿到你想要的数据 |
|
wgxin
2010-03-07
谢谢楼上的回复。
但是我想知道的是一个term在每个document中出现的频率 比如:有两个文档,1.txt 和2.txt。1.txt里面有term1 term1, 2.txt里面有term1 term2 建立索引后,就是 term1: 1.txt,2.txt term2: 2.txt 怎么得到term1在每个document中的频率。调用一个API,可以返回向量[2,1] ? |
|
yangfuchao418
2010-03-09
TermDocs toc = search.getIndexReader().termDocs(term);
System.out.print("find " + toc.freq() + " matches in");// 关键词出现的次数 |
|
jay88489
2010-03-10
重写Similarity类或继承DefaultSimilarity的tf(float freq) 方法。
freq就是每个document中关键词出现的次数 |