Тест Колмогорова-Смирнова дает результат, отличный от максимального (абс (разница (х, у)))

Я использую ks.test функция в r для выполнения теста Колмогорова-Смирнова. Я обнаружил, что тест Колмогорова-Смирнова дает результат, отличный от

max(abs(difference(x, y)))

Согласно определению теста Колмогорова-Смирнова в Википедии, результаты должны быть эквивалентными.

Кто-нибудь знает почему?

1 ответ

Решение

Статистика KS не должна быть равна max(|x-y|), Он применяется к кумулятивной функции (ам) распределения (CDF). Таким образом, он представляет скорее пропорцию наблюдений, различную между образцом и эталонным распределением.

Посмотрите два примера ниже, выполненных в MATLAB (хотя я ожидаю, что результаты будут идентичны в R):

    x = [1 2 3 4 5 6 7 8 9 10];
    y = [1 2 3 4 5 6 7 8 9 11];

    [~, ~, ks2s] = kstest2(x,y)

    ks2s =

        0.1000                       (1)



    x = [1 2 3 4 5 6 7 8 9 10];
    y = [1 2 3 4 5 6 7 8 9 12];

    [~, ~, ks2s] = kstest2(x,y)

    ks2s =

        0.1000                        (2)

Таким образом, хотя максимальная абсолютная разница величин x а также y чем больше в (2), то статистика KS одинакова, потому что доля разных выборок одинакова.

Если y имеет дополнительный образец, например, результат изменения:

    x = [1 2 3 4 5 6 7 8 9 10];
    y = [1 2 3 4 5 6 7 8 9 10 11];

    [h, p, ks2s] = kstest2(x,y)

    ks2s =

        0.0909
Другие вопросы по тегам