当前位置:  开发笔记 > 数据库 > 正文

获取整个索引的总术语频率(Elasticsearch)

如何解决《获取整个索引的总术语频率(Elasticsearch)》经验,为你挑选了1个好方法。

我试图计算整个索引(术语收集频率)中特定术语出现的总次数.我试图通过使用术语向量来实现这一点,但是这仅限于单个文档.即使在指定文档中存在术语的情况下,响应似乎最大化在某个doc_count(在field_statistics中),这使我怀疑它的准确性.

请求:

http://myip:9200/clinicaltrials/trial/AVmk-ky6XMskTDwIwpih/_termvectors?term_statistics=true

这里使用的文档ID是"AVmk-ky6XMskTDwIwpih",尽管术语统计不应该特定于文档.

响应:

这就是我对其中一个领域的"癌症"一词所得到的:

 "cancer" : {
      "doc_freq" : 5297,
      "ttf" : 10587,
      "term_freq" : 1,
      "tokens" : [
        {
          "position" : 15,
          "start_offset" : 115,
          "end_offset" : 121
        }
      ]
    },

如果我总计所有字段的ttf,我得到18915.但是,"癌症"的实际总术语频率实际上是542829.这使我相信它将term_vector统计数据限制为索引中的文档子集.

这里的任何建议将不胜感激.



1> groo..:

我相信您需要根据elasticsearch 文档将term_statistics设置为true :

术语统计将term_statistics设置为true(默认为false)将返回

总术语频率(一个术语在所有文档中出现的频率)

文件频率(包含当前术语的文件数)

默认情况下,由于期限统计信息可能会对性能产生严重影响,因此不会返回这些值。

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有