avgWeighted
Calculates the weighted arithmetic mean.
Syntax
avgWeighted(x, weight)
Arguments
- x— Values.
- weight— Weights of the values.
x and weight must both be
Integer,
floating-point, or
Decimal,
but may have different types.
Returned value
- NaNif all the weights are equal to 0 or the supplied weights parameter is empty.
- Weighted mean otherwise.
Return type is always Float64.
Example
Query:
SELECT avgWeighted(x, w)
FROM values('x Int8, w Int8', (4, 1), (1, 0), (10, 2))
Result:
┌─avgWeighted(x, weight)─┐
│                      8 │
└────────────────────────┘
Example
Query:
SELECT avgWeighted(x, w)
FROM values('x Int8, w Float64', (4, 1), (1, 0), (10, 2))
Result:
┌─avgWeighted(x, weight)─┐
│                      8 │
└────────────────────────┘
Example
Query:
SELECT avgWeighted(x, w)
FROM values('x Int8, w Int8', (0, 0), (1, 0), (10, 0))
Result:
┌─avgWeighted(x, weight)─┐
│                    nan │
└────────────────────────┘
Example
Query:
CREATE table test (t UInt8) ENGINE = Memory;
SELECT avgWeighted(t) FROM test
Result:
┌─avgWeighted(x, weight)─┐
│                    nan │
└────────────────────────┘