quantilesExactWeightedInterpolated
Introduzido em: v24.10.0
Calcula vários quantis de uma sequência de dados numéricos usando interpolação linear em diferentes níveis simultaneamente, levando em conta o peso de cada elemento.
Esta função é equivalente a quantileExactWeightedInterpolated, mas permite calcular vários níveis de quantil em uma única etapa, o que é mais eficiente do que chamar funções de quantil individualmente.
Sintaxe
quantilesExactWeightedInterpolated(level1, level2, ...)(expr, weight)Parâmetros
level— Níveis dos quantis. Um ou mais números de ponto flutuante constantes de 0 a 1. Recomendamos usar valores delevelno intervalo de[0.01, 0.99].Float*
Argumentos
expr— Expressão aplicada aos valores da coluna que resulta em tipos de dado numéricos,Date,DateTimeouDateTime64.(U)Int*ouInt128ouUInt128ouInt256ouUInt256ouFloat*ouDecimal*ouDateouDateTimeouDateTime64weight— Coluna com os pesos dos membros da sequência. O peso é o número de ocorrências do valor.UInt*
Valor retornado
Array de quantis dos níveis especificados, na mesma ordem em que eles foram informados. Argumentos numéricos produzem Float64, enquanto argumentos Decimal, Date, DateTime e DateTime64 mantêm seu formato de entrada. Array(Float64) ou Array(Decimal*) ou Array(Date) ou Array(DateTime) ou Array(DateTime64)
Exemplos
Calculando vários quantis interpolados exatos ponderados
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] │
└────────────────────────────────────────────────────────────────┘