elasticsearch - 如何在 Nest 中对重要术语聚合使用百分比分数
问题描述
我正在尝试在 Nest 中重新创建以下聚合
"aggs": {
"related_organisations": {
"significant_terms": {
"field": "organisations.keyword",
"percentage": {},
"min_doc_count": 5
"size": 10
}
}
}
}
我无法弄清楚函数表达式中的含义PercentageScore
.Aggregations(a => a
.SignificantTerms("related_organisations", sigTerms => sigTerms
.Field("organisations.keyword")
.Size(10)
.PercentageScore(p => [[what goes here??]])
.MinimumDocumentCount(5)
我可以通过这样做来编译它,p => p
但它不能正确构建查询并引发异常
System.TypeLoadException: GenericArguments[0], 'Nest.PercentageScoreHeuristic', on 'Nest.ReadAsFormatter`2[TRead,T]' violates the constraint of type parameter 'TRead'.
我也尝试过null
,new PercentageScoreHeuristicDescriptor()
但没有运气。
解决方案
正如评论中提到的,这是一个错误,正在修复中。
为了解决这个问题,直到我能够使用 Nest 的固定版本,我使用了脚本分数,并在其中复制了百分比分数:
.Aggregations(a => a
.SignificantTerms("related_organisations", sigTerms => sigTerms
.Field("organisations.keyword")
.Size(10)
.Script(s => s.Script("params._subset_freq/params._superset_freq"))
.MinimumDocumentCount(5)
推荐阅读
- python - 在 Python 中引用列表中的下一个变量
- ios - 导航到 PDF 时如何停止 WKWebView 继承上一页的视口?
- android - WebStorm:找不到为类生成的设置器
- python - 如何将通量比设置为约束?
- node.js - 贡献一个 JS 库
- powershell - 在尝试重命名 csv 文件中的列时,数据会从第二列和第三列中删除
- google-apps-script - 如何解析谷歌表格脚本中的范围
- powershell - 以管理员身份登录 PowerShell 脚本
- ip - 无法在 Windows 上访问本地内部 IP 地址
- excel - VBA类模块:从类内的对象获取属性