quantileExactHigh
quantileExact, cette fonction calcule le quantile exact d’une séquence de données numériques.
Pour obtenir la valeur exacte, toutes les valeurs transmises sont regroupées dans un tableau, qui est ensuite entièrement trié.
La complexité de l’algorithme de tri est de O(N·log(N)), où N = std::distance(first, last).
La valeur renvoyée dépend du niveau de quantile et du nombre d’éléments de la sélection. Autrement dit, si le niveau est de 0.5, la fonction renvoie la médiane supérieure lorsqu’il y a un nombre pair d’éléments, et la valeur médiane centrale lorsqu’il y a un nombre impair d’éléments.
La médiane est calculée de manière similaire à l’implémentation median_high utilisée en Python.
Pour tous les autres niveaux, l’élément à l’index correspondant à la valeur de level * size_of_array est renvoyé.
Lorsque plusieurs fonctions quantile* avec des niveaux différents sont utilisées dans une requête, les états internes ne sont pas combinés (autrement dit, la requête s’exécute moins efficacement qu’elle ne le pourrait).
Dans ce cas, utilisez la fonction quantiles.
Syntaxe
medianExactHigh
Paramètres
level— Facultatif. Niveau du quantile. Nombre constant à virgule flottante compris entre 0 et 1. Nous recommandons d’utiliser une valeur delevelcomprise dans l’intervalle[0.01, 0.99]. Valeur par défaut : 0.5. Pourlevel=0.5, la fonction calcule la médiane.Float*
expr— Expression appliquée aux valeurs de la colonne, produisant des types de données numériques, Date ou DateTime.(U)Int*ouFloat*ouDecimal*ouDateouDateTime
Float64 ou Date ou DateTime
Exemples
Calcul du quantile exact supérieur
Query
Response
Query
Response