quantilesExactWeighted
Introducido en: v1.1.0
Calcula con exactitud varios cuantiles de una secuencia de datos numéricos en distintos niveles de forma simultánea, teniendo en cuenta el peso de cada elemento.
Esta función es equivalente a quantileExactWeighted, pero permite calcular varios niveles de cuantil en una sola pasada, lo que resulta más eficiente que llamar a funciones de cuantil por separado.
Sintaxis
quantilesExactWeighted(level1, level2, ...)(expr, weight)Parámetros
level— Niveles de los cuantiles. Uno o más números constantes de coma flotante entre 0 y 1. Recomendamos usar valores deleveldentro del intervalo[0.01, 0.99].Float*
Argumentos
expr— Expresión sobre los valores de la columna cuyo resultado es de tipo de dato numérico,Date,DateTimeoDateTime64.(U)Int*oInt128oUInt128oInt256oUInt256oFloat*oDecimal*oDateoDateTimeoDateTime64weight— Columna con los pesos de los elementos de la secuencia. El peso es el número de apariciones del valor.UInt*
Valor devuelto
Array de cuantiles de los niveles especificados, en el mismo orden en que se especificaron. Para los tipos de datos numéricos, el formato de salida coincide con el formato de entrada. Array((U)Int*) o Array(Int128) o Array(UInt128) o Array(Int256) o Array(UInt256) o Array(Float*) o Array(Decimal*) o Array(Date) o Array(DateTime) o Array(DateTime64)
Ejemplos
Cálculo de varios cuantiles ponderados exactos
SELECT quantilesExactWeighted(0.25, 0.5, 0.75)(number, 1) FROM numbers(10)┌─quantilesExactWeighted(0.25, 0.5, 0.75)(number, 1)─┐
│ [2,4,7] │
└────────────────────────────────────────────────────┘