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.Stringcomputation_method— Метод, используемый для вычисления p-value. (Необязательно, по умолчанию: 'auto'.) 'exact': вычисление выполняется с использованием точного распределения вероятностей статистики критерия. Требует больших вычислительных ресурсов и нецелесообразно, кроме случаев с небольшими выборками. 'asymp' ('asymptotic'): вычисление выполняется с использованием приближения. Для выборок большого размера точные и асимптотические p-value очень близки. 'auto': метод 'exact' используется, когда максимальный размер выборки меньше 10'000.String
Аргументы
Возвращаемое значение
Возвращает кортеж из двух элементов: вычисленной статистики и вычисленного p-value. Tuple(Float64, Float64)
Примеры
Проверка одинаковости распределений
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)
)┌─kolmogorovSmirnovTest('less', 'exact')(value, num)─┐
│ (0.009899999999999996,0.37528595205132287) │
└────────────────────────────────────────────────────┘Тест на различие распределений
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)
)┌─kolmogorovSmirnovTest('two-sided', 'exact')(value, num)─┐
│ (0.4100000000000002,6.61735760482795e-8) │
└─────────────────────────────────────────────────────────┘См. также