我最近开始通过Python API使用Elasticsearch,并尝试使用术语向量来获取每个单词的频率。
我正在使用多个Multi termvectors API,如下所示:
results = es.mtermvectors(index=INDEX_NAME, doc_type=DOC_TYPE, ids="1,2",
fields=['text'],
field_statistics=True,
term_statistics=True)
但是,这会为每个文档返回一组单独的结果,而我正在尝试在所有文档中获得总结果。 term_statistics / doc_freq值(“包含当前术语的文档数量”)应该为我提供我需要的信息,但这始终为1,因为每个文档都会返回单独的结果。任何想法如何让doc_freq返回有意义的值?我需要使用聚合吗?
此处的相关文档:
https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-termvectors.html https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-multi-termvectors.html http://elasticsearch-py.readthedocs.io/en/master/api.html
提前感谢您的帮助。