covarSampStable
Добавленный в: v1.1.0
Вычисляет выборочную ковариацию:
\frac{\Sigma{(x - \bar{x})(y - \bar{y})}}{n - 1}Функция аналогична covarSamp, но использует численно устойчивый алгоритм.
В результате covarSampStable работает медленнее, чем covarSamp, но обеспечивает меньшую вычислительную погрешность.
Синтаксис
covarSampStable(x, y)Аргументы
x— первая переменная.(U)Int*илиFloat*илиDecimaly— вторая переменная.(U)Int*илиFloat*илиDecimal
Возвращаемое значение
Возвращает выборочную ковариацию между x и y. При n <= 1 возвращается inf. Float64
Примеры
Базовое вычисление выборочной ковариации с использованием численно устойчивого алгоритма
DROP TABLE IF EXISTS series;
CREATE TABLE series(i UInt32, x_value Float64, y_value Float64) ENGINE = Memory;
INSERT INTO series(i, x_value, y_value) VALUES (1, 5.6,-4.4),(2, -9.6,3),(3, -1.3,-4),(4, 5.3,9.7),(5, 4.4,0.037),(6, -8.6,-7.8),(7, 5.1,9.3),(8, 7.9,-3.6),(9, -8.2,0.62),(10, -3,7.3);
SELECT covarSampStable(x_value, y_value)
FROM
(
SELECT
x_value,
y_value
FROM series
);┌─covarSampStable(x_value, y_value)─┐
│ 7.206275555555556 │
└───────────────────────────────────┘При одном значении возвращается inf
SELECT covarSampStable(x_value, y_value)
FROM
(
SELECT
x_value,
y_value
FROM series LIMIT 1
);┌─covarSampStable(x_value, y_value)─┐
│ inf │
└───────────────────────────────────┘