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

varSampStable

varSampStable

Рассчитайте выборочную дисперсию набора данных. В отличие от varSamp, эта функция использует численно стабильный алгоритм. Она работает медленнее, но обеспечивает меньшую вычислительную ошибку.

Синтаксис

varSampStable(x)

Псевдоним: VAR_SAMP_STABLE

Параметры

  • x: Популяция, для которой вы хотите рассчитать выборочную дисперсию. (U)Int*, Float*, Decimal*.

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

  • Возвращает выборочную дисперсию входного набора данных. Float64.

Детали реализации

Функция varSampStable рассчитывает выборочную дисперсию, используя ту же формулу, что и varSamp:

(xmean(x))2(n1)\sum\frac{(x - \text{mean}(x))^2}{(n - 1)}

Где:

  • x — каждое отдельное значение в наборе данных.
  • mean(x) — арифметическое среднее набора данных.
  • n — количество значений в наборе данных.

Пример

Запрос:

DROP TABLE IF EXISTS test_data;
CREATE TABLE test_data
(
    x Float64
)
ENGINE = Memory;

INSERT INTO test_data VALUES (10.5), (12.3), (9.8), (11.2), (10.7);

SELECT round(varSampStable(x),3) AS var_samp_stable FROM test_data;

Ответ:

┌─var_samp_stable─┐
│           0.865 │
└─────────────────┘