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

kolmogorovSmirnovTest

Добавленный в: v23.4.0 Применяет критерий Колмогорова — Смирнова к выборкам из двух совокупностей. Значения обеих выборок находятся в столбце sample_data. Если sample_index равен 0, то значение в этой строке относится к выборке из первой совокупности. В противном случае оно относится к выборке из второй совокупности. Выборки должны быть взяты из непрерывных одномерных распределений вероятностей. Синтаксис
kolmogorovSmirnovTest([alternative, computation_method])(sample_data, sample_index)
Параметры
  • alternative — Альтернативная гипотеза. (Необязательно, по умолчанию: ‘two-sided’.) Пусть F(x) and G(x) — функции распределения первого и второго распределений соответственно. ‘two-sided’: нулевая гипотеза состоит в том, что выборки происходят из одного и того же распределения, например F(x) = G(x) для всех x. Альтернативная гипотеза состоит в том, что распределения не совпадают. ‘greater’: нулевая гипотеза состоит в том, что значения в первой выборке стохастически меньше, чем во второй, например функция распределения первого распределения лежит выше и, следовательно, левее, чем у второго. Это фактически означает, что F(x) >= G(x) для всех x. Альтернативная гипотеза в этом случае состоит в том, что F(x) < G(x) хотя бы для одного x. ‘less’: нулевая гипотеза состоит в том, что значения в первой выборке стохастически больше, чем во второй, например функция распределения первого распределения лежит ниже и, следовательно, правее, чем у второго. Это фактически означает, что F(x) <= G(x) для всех x. Альтернативная гипотеза в этом случае состоит в том, что F(x) > G(x) хотя бы для одного x. String
  • computation_method — Метод, используемый для вычисления p-value. (Необязательно, по умолчанию: ‘auto’.) ‘exact’: вычисление выполняется с использованием точного распределения вероятностей статистики критерия. Требует больших вычислительных ресурсов и нецелесообразно, кроме случаев с небольшими выборками. ‘asymp’ (‘asymptotic’): вычисление выполняется с использованием приближения. Для выборок большого размера точные и асимптотические p-value очень близки. ‘auto’: метод ‘exact’ используется, когда максимальный размер выборки меньше 10’000. String
Аргументы
  • sample_data — Данные выборки. (U)Int* или Float* или Decimal
  • sample_index — Индекс выборки. (U)Int*
Возвращаемое значение Возвращает кортеж из двух элементов: вычисленной статистики и вычисленного p-value. Tuple(Float64, Float64) Примеры Проверка одинаковости распределений
Query
SELECT kolmogorovSmirnovTest('less', 'exact')(value, num)
FROM
(
    SELECT
        randNormal(0, 10) AS value,
        0 AS num
    FROM numbers(10000)
    UNION ALL
    SELECT
        randNormal(0, 10) AS value,
        1 AS num
    FROM numbers(10000)
)
Response
┌─kolmogorovSmirnovTest('less', 'exact')(value, num)─┐
│ (0.009899999999999996,0.37528595205132287)         │
└────────────────────────────────────────────────────┘
Тест на различие распределений
Query
SELECT kolmogorovSmirnovTest('two-sided', 'exact')(value, num)
FROM
(
    SELECT
        randStudentT(10) AS value,
        0 AS num
    FROM numbers(100)
    UNION ALL
    SELECT
        randNormal(0, 10) AS value,
        1 AS num
    FROM numbers(100)
)
Response
┌─kolmogorovSmirnovTest('two-sided', 'exact')(value, num)─┐
│ (0.4100000000000002,6.61735760482795e-8)                │
└─────────────────────────────────────────────────────────┘
См. также
Последнее изменение 10 июня 2026 г.