使用英语阅读

通过


你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

rank_tdigest()

适用于:✅Microsoft Fabric✅Azure 数据资源管理器Azure MonitorMicrosoft✅ Sentinel

计算数据集中值的近似排序。 数据集 S 中值 v 的排序定义为 S 中小于或等于 v 的成员的计数,S 使用其 tdigest 表示。

语法

rank_tdigest(digest, value)

详细了解语法约定

参数

客户 类型​​ 必需 说明
digest string tdigest()tdigest_merge() 生成的一个表达式。
value 标量 (scalar) 一个表达式,表示要用于排名计算的值。

返回

数据集中每个值的排名。

提示

要获取其排名的值必须与 tdigest 为同一类型。

示例

在排序列表 (1-1000) 中,排名 685 是其索引:

Kusto
range x from 1 to 1000 step 1
| summarize t_x=tdigest(x)
| project rank_of_685=rank_tdigest(t_x, 685)

输出

rank_of_685
685

此查询计算所有损坏财产成本的值 4490$ 的排名:

Kusto
StormEvents
| summarize tdigestRes = tdigest(DamageProperty)
| project rank_of_4490=rank_tdigest(tdigestRes, 4490) 

输出

rank_of_4490
50207

获取排名的估计百分比(通过除以数据集大小):

Kusto
StormEvents
| summarize tdigestRes = tdigest(DamageProperty), count()
| project rank_tdigest(tdigestRes, 4490) * 100.0 / count_

输出

Column1
85.0015237192293

损坏财产成本的第 85 个百分位数为 4490$:

Kusto
StormEvents
| summarize tdigestRes = tdigest(DamageProperty)
| project percentile_tdigest(tdigestRes, 85, typeof(long))

输出

percentile_tdigest_tdigestRes
4490