簡體   English   中英

從多個文檔中添加詞頻 (Solr)

[英]Add Term Frequencies From Multiple Documents (Solr)

您如何使用 Solr 數學運算或函數查詢為查詢返回的所有文檔添加每個單詞的詞頻 (tf) 值?

我知道有一些方法可以使用 java 迭代添加術語向量,但是如果索引很大或內存有限,這可能需要很長時間。 Solr 有原始詞頻值和添加普通字段值的能力,所以我認為它應該能夠添加詞頻,我只是不知道如何。

還有,我不知道提前是什么詞,每個文檔可以有任意的詞組合。

對於此文檔結果:

"docs": [
  {
    "id": 0,
    "content": [
      "FOO FOO BAR"
    ],
  },
  {
    "id": 0,
    "content": [
      "FOO BAR"
    ],
  },
]},"termVectors": [
"uniqueKeyFieldName",
[
  "0",
  [
    "FOO",
    [
      "tf",
      2
    ],
    "BAR",
    [
      "tf",
      1
    ],
],"1",
  [
    "FOO",
    [
      "tf",
      1
    ],
    "BAR",
    [
      "tf",
      1]]}

我想要這樣的東西:

{"frequencies":{
"FOO" : 3
"BAR" : 2
}


更新:我現在可以使用 Java 的編程方法,因為我認為 SOLR 不支持這樣的開箱即用的操作。

totaltermfreqttf提供術語在索引中出現的總次數。

您是否已經考慮過“ 方面 ”功能?

你檢查過統計組件嗎? 可以將動態字段定義為stats.field 請參閱Solr 統計組件示例中的stats.field={!func}termfreq('text','memory')

http://localhost:8983/solr/techproducts/select?q=*:*&wt=xml&stats=true&stats.field={!func}termfreq('text','memory')&stats.field=price&stats.field=popularity&rows=0&indent=true

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM