Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

quantilesInterpolatedWeighted

quantilesInterpolatedWeighted

Introduzido em: v23.1.0

Calcula múltiplos quantis de uma sequência de dados numéricos usando interpolação linear em diferentes níveis simultaneamente, considerando o peso de cada elemento.

Esta função é equivalente a quantileInterpolatedWeighted, mas permite calcular vários níveis de quantil em uma única passagem, o que é mais eficiente do que chamar funções de quantil individualmente.

Sintaxe

quantilesInterpolatedWeighted(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 de level no intervalo [0.01, 0.99]. Float*

Argumentos

Valor retornado

Array de quantis dos níveis especificados, na mesma ordem em que os níveis foram especificados. Para tipos de dados numéricos, o formato de saída corresponde ao formato de entrada. Array((U)Int*) ou Array(Int128) ou Array(UInt128) ou Array(Int256) ou Array(UInt256) ou Array(Float*) ou Array(Decimal*) ou Array(Date) ou Array(DateTime) ou Array(DateTime64)

Exemplos

Cálculo de vários quantis ponderados interpolados

SELECT quantilesInterpolatedWeighted(0.25, 0.5, 0.75)(number, 1) FROM numbers(10)
┌─quantilesInterpolatedWeighted(0.25, 0.5, 0.75)(number, 1)─┐
│ [2,4,7]                                                   │
└───────────────────────────────────────────────────────────┘
Navigation