TDIGEST.RANK

语法
TDIGEST.RANK key value [value ...]
可用
Redis Stack / Bloom 2.4.0
时间复杂度
O(1)

返回每个输入值(浮点数)的估计排名(草图中小于该值的观测值数量 + 等于该值的观测值数量的一半)。

可以在单个调用中检索多个排名。

必需参数

是现有 t-digest 草图的键名。
是要估计其排名的输入值。

返回值

数组回复 - 一个用 rank_1、rank_2、...、rank_V 填充的整数数组

  • -1 - 当 value 小于最小观测值的值时。
  • 观测值数量 - 当 value 大于最大观测值的值时。
  • 否则:对(小于 value 的观测值数量 + 等于 value 的观测值数量的一半)的估计。

0 是最小观测值的值的排名。

n-1 是最大观测值的值的排名;n 表示添加到草图中的观测值数量。

如果草图为空,则所有值均为 -2。

示例

redis> TDIGEST.CREATE s COMPRESSION 1000
OK
redis> TDIGEST.ADD s 10 20 30 40 50 60
OK
redis> TDIGEST.RANK s 0 10 20 30 40 50 60 70
1) (integer) -1
2) (integer) 0
3) (integer) 1
4) (integer) 2
5) (integer) 3
6) (integer) 4
7) (integer) 5
8) (integer) 6
redis> TDIGEST.REVRANK s 0 10 20 30 40 50 60 70
1) (integer) 6
2) (integer) 5
3) (integer) 4
4) (integer) 3
5) (integer) 2
6) (integer) 1
7) (integer) 0
8) (integer) -1  
redis> TDIGEST.CREATE s COMPRESSION 1000
OK
redis> TDIGEST.ADD s 10 10 10 10 20 20
OK
redis> TDIGEST.RANK s 10 20
1) (integer) 2
2) (integer) 5
redis> TDIGEST.REVRANK s 10 20
1) (integer) 4
2) (integer) 1

RATE THIS PAGE
Back to top ↑