getTermFreqVector() - NullPointerException

问题描述 投票:0回答:2

我试图使用以下代码获取一组文档的tf:

IndexReader r = IndexReader.open(FSDirectory.open(new File("index")));

TermFreqVector tfv = r.getTermFreqVector(root[i],"contents"); // where root[] contains the
document IDs of the documents in my corpus

我一直得到一个空指针异常。谁能告诉我这里可能有什么问题?我正在使用Lucene 3.6.2,无论如何确保在索引时启用termFreqVector?

java nullpointerexception lucene tf-idf
2个回答
0
投票

如果我的猜测是正确的,字段contents是一个TextField,它被索引和标记化但没有术语向量。因此,您将获得空值。人们需要更多信息来调试确切的原因。


0
投票

将字段添加到索引中,您应该指定第四个参数,如下所示:

doc.Add(new Field(“text”,text,Field.Store.NO,Field.Index.ANALYZED,Field.TermVector.YES));

© www.soinside.com 2019 - 2024. All rights reserved.