quantileExactWeighted
quantileExactWeighted
Введена в версии v1.1
Точно вычисляет квантиль числовой последовательности данных с учётом веса каждого элемента.
Для получения точного значения все переданные значения объединяются в массив, который затем частично сортируется.
Каждое значение учитывается с его весом, как если бы оно присутствовало weight раз.
В алгоритме используется хеш-таблица.
Благодаря этому, если передаваемые значения часто повторяются, функция потребляет меньше RAM, чем quantileExact.
Вы можете использовать эту функцию вместо quantileExact и указать вес 1.
При использовании нескольких функций quantile* с разными уровнями в запросе их внутренние состояния не объединяются (то есть запрос работает менее эффективно, чем мог бы).
В этом случае используйте функцию quantiles.
Синтаксис
Псевдонимы: medianExactWeighted
Параметры
level— Необязательный параметр. Уровень квантиля. Константа с плавающей запятой от 0 до 1. Рекомендуется использовать значениеlevelв диапазоне[0.01, 0.99]. Значение по умолчанию: 0.5. Приlevel=0.5функция вычисляет медиану.Float*
Аргументы
expr— Выражение над значениями в столбце, результатом которого являются значения числовых типов данных, Date или DateTime.(U)Int*илиFloat*илиDecimal*илиDateилиDateTimeweight— Столбец с весами элементов последовательности. Вес — это количество вхождений значения.UInt*
Возвращаемое значение
Квантиль указанного уровня. Float64 или Date или DateTime
Примеры
Вычисление точного взвешенного квантиля
См. также