Passer au contenu principal

quantilesExactExclusive

Introduit dans : v20.1.0 Calcule exactement plusieurs quantiles d’une séquence de données numériques à différents niveaux, simultanément, à l’aide de la méthode exclusive. Cette fonction est équivalente à quantileExactExclusive, mais elle permet de calculer plusieurs niveaux de quantile en un seul passage, ce qui est plus efficace que d’appeler séparément des fonctions de quantile. Cette fonction utilise la méthode exclusive pour calculer les quantiles, comme décrit dans la méthode R-6. Elle est équivalente à la fonction Excel PERCENTILE.EXC. Pour obtenir des valeurs exactes, toutes les valeurs passées en argument sont regroupées dans un tableau, qui est ensuite partiellement trié. La complexité de l’algorithme de tri est de O(N·log(N)), où N = std::distance(first, last). Syntaxe
quantilesExactExclusive(level1, level2, ...)(expr)
Paramètres
  • level — Niveaux de quantile. Nombres à virgule flottante constants strictement compris entre 0 et 1. Nous recommandons d’utiliser des valeurs de level dans l’intervalle (0.01, 0.99). Float*
Arguments
  • expr — Expression sur les valeurs de la colonne produisant des types de données numériques, Date ou DateTime. (U)Int* ou Float* ou Decimal* ou Date ou DateTime
Valeur renvoyée Tableau de quantiles des niveaux spécifiés, dans le même ordre que celui des niveaux indiqués. Array(Float64) Exemples Calcul de plusieurs quantiles exacts exclusifs
Query
CREATE TABLE num AS numbers(1000);
SELECT quantilesExactExclusive(0.25, 0.5, 0.75, 0.9, 0.95, 0.99, 0.999)(number) FROM num;
Response
┌─quantilesExactExclusive(0.25, 0.5, 0.75, 0.9, 0.95, 0.99, 0.999)(number)─┐
│ [249.25,499.5,749.75,899.9,949.95,989.99,998.999]                        │
└──────────────────────────────────────────────────────────────────────────┘
Dernière modification le 25 juin 2026