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

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 │
└────────────────────────┘