Перейти к основному содержанию
Перейти к основному содержанию

avgWeighted

Вычисляет взвешенное среднее арифметическое.

Синтаксис

avgWeighted(x, weight)

Аргументы

  • x — значения.
  • weight — веса значений.

x и weight должны быть либо целыми числами, либо числами с плавающей запятой, но могут иметь разные типы.

Возвращаемое значение

  • NaN, если все веса равны 0 или переданный параметр весов пуст.
  • Взвешенное среднее в остальных случаях.

Тип возвращаемого значения всегда Float64.

Пример

Запрос:

SELECT avgWeighted(x, w)
FROM VALUES('x Int8, w Int8', (4, 1), (1, 0), (10, 2))

Результат:

┌─avgWeighted(x, weight)─┐
│                      8 │
└────────────────────────┘

Пример

Запрос:

SELECT avgWeighted(x, w)
FROM VALUES('x Int8, w Float64', (4, 1), (1, 0), (10, 2))

Результат:

┌─avgWeighted(x, weight)─┐
│                      8 │
└────────────────────────┘

Пример

Запрос:

SELECT avgWeighted(x, w)
FROM VALUES('x Int8, w Int8', (0, 0), (1, 0), (10, 0))

Результат:

┌─avgWeighted(x, weight)─┐
│                    nan │
└────────────────────────┘

Пример

Запрос:

CREATE TABLE test (t UInt8) ENGINE = Memory;
SELECT avgWeighted(t) FROM test

Результат:

┌─avgWeighted(x, weight)─┐
│                    nan │
└────────────────────────┘