1

我有兴趣使用 Solr 分析文档并获取与特定条件匹配的所有文档的词频。

我尝试了 termVectorComponent 但我只能获得单个文档的词频,而不是文档组的总数。

例如给出以下数据:

  {
    "id": "1",
    "category": "cat1",
    "includes": "The green car.",
  },
  {
    "id": "2",
    "category": "cat1",
    "includes": "The red car.",
  },
  {
    "id": "3",
    "category": "cat2",
    "includes": "The black car.",
  }

我希望能够获得每个类别的总词频计数。例如

<category name="cat1">
   <lst name="the">2</lst>
   <lst name="car">2</lst>
   <lst name="green">1</lst>
   <lst name="red">1</lst>
</category>
<category name="cat2">
   <lst name="the">1</lst>
   <lst name="car">1</lst>
   <lst name="black">1</lst>
</category>

我尝试使用构面,但无法让它们组合单个文档的字数,如上所示。我注意到 termVector 支持为整个索引中使用的术语提供了文档频率,但这对我没有用。我只需要文档子集的总频率计数。

有人对如何从 Solr/Lucene 获取这些信息有建议吗?

提前致谢。

4

1 回答 1

0

我找到了这个链接;您必须修改 TermsComponent.java链接(也许是 solrJ?)

我从来没有尝试过,但你也可以使用函数查询(即总和)来将 tv.df 值相加吗?这是功能查询链接的完整列表

于 2013-05-15T17:34:32.220 回答