Pular para o conteúdo principal

quantileExactInclusive

Introduzido em: v20.1.0 Semelhante a quantileExact, esta função calcula o quantil exato de uma sequência numérica de dados. Esta função é equivalente a quantileExact, mas usa o método inclusivo para calcular quantis, conforme descrito no método R-7. Ao usar esta função, o quantil é calculado de modo que a fórmula de interpolação para um dado quantil p tenha a forma: x[floor((n-1)*p)] + ((n-1)*p - floor((n-1)*p)) * (x[floor((n-1)*p)+1] - x[floor((n-1)*p)]), em que x é o array ordenado. Para obter o valor exato, todos os valores fornecidos são combinados em um array, que depois é totalmente ordenado. A complexidade do algoritmo de ordenação é O(N·log(N)), em que N = std::distance(first, last) comparações. Ao usar várias funções quantile* com níveis diferentes em uma consulta, os estados internos não são combinados (ou seja, a consulta funciona com menos eficiência do que poderia). Nesse caso, use a função quantiles. Sintaxe
quantileExactInclusive(level)(expr)
Parâmetros
  • level — Nível do quantil. Número de ponto flutuante constante de 0 a 1 (inclusive). Recomendamos usar um valor de level no intervalo [0.01, 0.99]. Float*
Argumentos Valor retornado Retorna o quantil no nível especificado. Float64 Exemplos Cálculo do quantil inclusivo exato
Query
SELECT quantileExactInclusive(0.25)(number) FROM numbers(5);
Response
┌─quantileExactInclusive(0.25)(number)─┐
│                                    1 │
└──────────────────────────────────────┘
Calculando vários níveis de quantil
Query
SELECT quantileExactInclusive(0.1)(number), quantileExactInclusive(0.9)(number) FROM numbers(10);
Response
┌─quantileExactInclusive(0.1)(number)─┬─quantileExactInclusive(0.9)(number)─┐
│                                 0.9 │                                 8.1 │
└─────────────────────────────────────┴─────────────────────────────────────┘
Última modificação em 10 de junho de 2026