Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

quantilesDeterministic

quantilesDeterministic

Introducido en: v1.1.0

Calcula simultáneamente varios cuantiles aproximados de una secuencia de datos numéricos en distintos niveles mediante muestreo por reservorio determinista.

Esta función es equivalente a quantileDeterministic, pero permite calcular varios niveles de cuantiles en una sola pasada, lo que es más eficiente que invocar funciones de cuantiles individuales.

Sintaxis

quantilesDeterministic(level1, level2, ...)(expr, determinator)

Parámetros

  • level — Niveles de cuantiles. Uno o más números constantes de coma flotante entre 0 y 1. Recomendamos usar valores de level en el rango [0.01, 0.99]. Float*

Argumentos

  • expr — Expresión sobre los valores de la columna que da como resultado data types numéricos, Date o DateTime. (U)Int* o Int128 o UInt128 o Int256 o UInt256 o Float* o Date o DateTime
  • determinator — Número cuyo hash se utiliza en lugar de un generador de números aleatorios en el algoritmo de reservoir sampling para que el resultado del muestreo sea determinista. UInt*

Valor devuelto

Array de cuantiles aproximados de los niveles especificados, en el mismo orden en que se indicaron dichos niveles. Array(Float64) o Array(Date) o Array(DateTime)

Ejemplos

Cálculo de varios cuantiles deterministas

SELECT quantilesDeterministic(0.25, 0.5, 0.75)(number, number) FROM numbers(10)
┌─quantilesDeterministic(0.25, 0.5, 0.75)(number, number)─┐
│ [2.25,4.5,6.75]                                         │
└─────────────────────────────────────────────────────────┘
Navigation