--- acl_categories: - '@tdigest' - '@read' arguments: - name: key type: key - multiple: true name: reverse_rank type: double categories: - docs - develop - stack - oss - rs - rc - oss - kubernetes - clients complexity: O(1) description: Returns, for each input reverse rank, an estimation of the floating-point value with that reverse rank group: tdigest hidden: false linkTitle: TDIGEST.BYREVRANK module: Bloom railroad_diagram: /images/railroad/tdigest.byrevrank.svg since: 2.4.0 stack_path: docs/data-types/probabilistic summary: Returns, for each input reverse rank, an estimation of the value (floating-point) with that reverse rank syntax_fmt: TDIGEST.BYREVRANK key reverse_rank [reverse_rank ...] title: TDIGEST.BYREVRANK --- Returns, for each input reverse rank (`revrank`), an estimation of the floating-point value with that reverse rank. Multiple estimations can be retrieved in a single call. ## Required arguments
key is the key name of an existing t-digest sketch.
revrank Reverse ranks for which the values should be retrieved. 0 is the reverse rank of the value of the largest observation. _n_-1 is the reverse rank of the value of the smallest observation, where _n_ denotes the number of observations added to the sketch.
## Examples {{< highlight bash >}} redis> TDIGEST.CREATE t COMPRESSION 1000 OK redis> TDIGEST.ADD t 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 OK redis> TDIGEST.BYREVRANK t 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1) "5" 2) "5" 3) "5" 4) "5" 5) "5" 6) "4" 7) "4" 8) "4" 9) "4" 10) "3" 11) "3" 12) "3" 13) "2" 14) "2" 15) "1" 16) "-inf" {{< / highlight >}} ## Redis Software and Redis Cloud compatibility | Redis
Software | Redis
Cloud | Notes | |:----------------------|:-----------------|:------| | ✅ Supported
| ✅ Flexible & Annual
✅ Free & Fixed | | ## Return information {{< multitabs id="tdigest-byrevrank-return-info" tab1="RESP2" tab2="RESP3" >}} One of the following: * [Array]({{< relref "/develop/reference/protocol-spec#arrays" >}}) of [bulk strings]({{< relref "/develop/reference/protocol-spec#bulk-strings" >}}) as floating-points, populated with value_1, value_2, ..., value_R: * an accurate result when `rank` is `0`, the value of the largest observation. * an accurate result when `rank` is _n_-1, the value of the smallest observation, where _n_ denotes the number of observations added to the sketch. * `inf` when `rank` is equal to _n_ or larger than _n_. * `nan` for all ranks when the given sketch is empty. * [Simple error reply]({{< relref "/develop/reference/protocol-spec#simple-errors" >}}) in these cases: the given key does not exist or is of an incorrect type, rank parsing errors, or an incorrect number of arguments. -tab-sep- One of the following: * [Array]({{< relref "/develop/reference/protocol-spec#arrays" >}}) of [doubles]({{< relref "/develop/reference/protocol-spec#doubles" >}}) as floating-points, populated with value_1, value_2, ..., value_R: * an accurate result when `rank` is `0`, the value of the largest observation. * an accurate result when `rank` is _n_-1, the value of the smallest observation, where _n_ denotes the number of observations added to the sketch. * `inf` when `rank` is equal to _n_ or larger than _n_. * `nan` for all ranks when the given sketch is empty. * [Simple error reply]({{< relref "/develop/reference/protocol-spec#simple-errors" >}}) in these cases: the given key does not exist or is of an incorrect type, rank parsing errors, or an incorrect number of arguments. {{< /multitabs >}}