본문으로 바로가기
본문으로 바로가기

covarSampStable

covarSampStable

Introduced in: v1.1.0

표본 공분산을 계산합니다:

Σ(xxˉ)(yyˉ)n1\frac{\Sigma{(x - \bar{x})(y - \bar{y})}}{n - 1}

covarSamp와 유사하지만 수치적으로 안정적인 알고리즘을 사용합니다. 결과적으로 covarSampStablecovarSamp보다 느리지만 더 낮은 계산 오차를 제공합니다.

Syntax

covarSampStable(x, y)

인수

반환값

xy 사이의 표본 공분산을 반환합니다. 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 │
└───────────────────────────────────┘