quantileBFloat16
Introducido en: v21.7.0
Calcula un cuantil aproximado de una muestra compuesta por números bfloat16.
bfloat16 es un tipo de dato de coma flotante con 1 bit de signo, 8 bits de exponente y 7 bits de fracción.
La función convierte los valores de entrada en números de coma flotante de 32 bits y toma los 16 bits más significativos. A continuación, calcula el valor del cuantil bfloat16 y convierte el resultado en un número de coma flotante de 64 bits añadiendo bits de cero.
La función es un estimador rápido de cuantiles con un error relativo máximo de 0.78125% (y un error relativo medio de aproximadamente 0.27%), correspondiente a la precisión de mantisa de 7 bits de bfloat16.
Sintaxis
quantileBFloat16[(level)](expr)Alias: medianBFloat16
Parámetros
level— Opcional. Nivel del cuantil. Los posibles valores están en el intervalo de 0 a 1. Valor predeterminado: 0.5.Float*
Argumentos
expr— Expresión sobre los valores de la columna cuyo resultado es de tipo de dato numérico,DateoDateTime.(U)Int*oFloat*oDateoDateTime
Valor devuelto
Cuantil aproximado del nivel especificado. Para entradas Date y DateTime, el formato de salida coincide con el formato de entrada. Float64 o Date o DateTime
Ejemplos
Cálculo de cuantiles con bfloat16
CREATE TABLE example_table (a UInt32, b Float32) ENGINE = Memory;
INSERT INTO example_table VALUES (1, 1.001), (2, 1.002), (3, 1.003), (4, 1.004);
SELECT quantileBFloat16(0.75)(a), quantileBFloat16(0.75)(b) FROM example_table;┌─quantileBFloat16(0.75)(a)─┬─quantileBFloat16(0.75)(b)─┐
│ 3 │ 1 │
└───────────────────────────┴───────────────────────────┘Véase también