Тест колмогорова-смирнова в 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