Тест колмогорова-смирнова в r (з прикладами)


Тест Колмогорова-Смирнова використовується для перевірки того, чи походить вибірка з певного розподілу.

Щоб виконати одно- чи двовибірковий тест Колмогорова-Смирнова в R, ми можемо використати функцію ks.test() .

Цей підручник демонструє приклад використання цієї функції на практиці.

Приклад 1: Випробування Колмогорова-Смирнова

Припустимо, що ми маємо такі зразки даних:

 #make this example reproducible
seed(0)

#generate dataset of 100 values that follows a Poisson distribution with mean=5
data <- rpois(n= 20 , lambda= 5 )

Пов’язане: посібник із dpois, ppois, qpois і rpois у R

Наступний код показує, як виконати тест Колмогорова-Смирнова на цій вибірці зі 100 значень даних, щоб визначити, чи походять вони з нормального розподілу:

 #perform Kolmogorov-Smirnov test
ks.test(data, “ pnorm ”)

	One-sample Kolmogorov–Smirnov test

data:data
D = 0.97725, p-value < 2.2e-16
alternative hypothesis: two-sided

З результату ми бачимо, що статистика тесту становить 0,97725 , а відповідне значення p — 2,2e-16 . Оскільки p-значення менше 0,05, ми відхиляємо нульову гіпотезу. У нас є достатньо доказів, щоб стверджувати, що вибіркові дані не походять із нормального розподілу.

Цей результат не повинен бути несподіваним, оскільки ми згенерували вибіркові дані за допомогою функції rpois() , яка генерує випадкові значення, що відповідають розподілу Пуассона .

Приклад 2: Двопробовий тест Колмогорова-Смирнова

Скажімо, ми маємо два зразки наборів даних:

 #make this example reproducible
seed(0)

#generate two datasets
data1 <- rpois(n= 20 , lambda= 5 )
data2 <- rnorm( 100 )

Наступний код показує, як виконати тест Колмогорова-Смирнова на цих двох зразках, щоб визначити, чи походять вони з одного розподілу:

 #perform Kolmogorov-Smirnov test
ks.test(data1, data2)

	Two-sample Kolmogorov–Smirnov test

data: data1 and data2
D = 0.99, p-value = 1.299e-14
alternative hypothesis: two-sided

З результату ми бачимо, що статистика тесту становить 0,99 , а відповідне значення p — 1,299e-14 . Оскільки p-значення менше 0,05, ми відхиляємо нульову гіпотезу. У нас є достатньо доказів, щоб стверджувати, що два зразки наборів даних не з одного розподілу.

Цей результат також не повинен бути дивним, оскільки ми генерували значення для першого зразка за допомогою розподілу Пуассона, а значення для другого зразка за допомогою нормального розподілу .

Додаткові ресурси

Як виконати тест Шапіро-Вілка в R
Як виконати тест Андерсона-Дарлінга в R
Як виконати багатофакторні тести нормальності в R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *