quantilesExactWeightedInterpolated
Introducido en: v24.10.0
Calcula varios cuantiles de una secuencia de datos numéricos mediante interpolación lineal en distintos niveles de forma simultánea, teniendo en cuenta el peso de cada elemento.
Esta función es equivalente a quantileExactWeightedInterpolated, pero permite calcular varios niveles de cuantiles en una sola pasada, lo que resulta más eficiente que llamar a funciones de cuantiles individuales.
Sintaxis
quantilesExactWeightedInterpolated(level1, level2, ...)(expr, weight)Parámetros
level— Niveles de cuantiles. Uno o más números constantes de coma flotante de 0 a 1. Recomendamos usar valores deleveldentro del rango[0.01, 0.99].Float*
Argumentos
expr— Expresión sobre los valores de la columna que produce tipos de datos numéricos,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 indicaron esos niveles. Los argumentos numéricos producen Float64, mientras que los argumentos Decimal, Date, DateTime y DateTime64 conservan su formato de entrada. Array(Float64) o Array(Decimal*) o Array(Date) o Array(DateTime) o Array(DateTime64)
Ejemplos
Cálculo de múltiples cuantiles exactos ponderados con interpolación
SELECT quantilesExactWeightedInterpolated(0.25, 0.5, 0.75)(number, 1) FROM numbers(10)┌─quantilesExactWeightedInterpolated(0.25, 0.5, 0.75)(number, 1)─┐
│ [2.25,4.5,6.75] │
└────────────────────────────────────────────────────────────────┘