«В зв’язках не повинно бути присутніх» в однопробному тесті Колмгорова-Смірнова в R


12

Я буду використовувати тест Колмогорова-Смірнова, щоб перевірити нормальність MYDATA в Р. Це приклад того, що я роблю

 ks.test(MYDATA,"pnorm",mean(MYDATA),sd(MYDATA))

Ось результат, який дає мені R:

 data:  MYDATA
 D = 0.13527, p-value = 0.1721
 alternative hypothesis: two-sided

 Warning message:
 In ks.test(MYDATA, "pnorm", mean(MYDATA), sd(MYDATA)) :
    ties should not be present for the Kolmogorov-Smirnov test

Я думаю, що є проблема, що означають "зв'язки" у цьому попередженні?


2
Чому ви хочете пройти цей тест на нормальність? У більшості випадків тестування нормальності змінної є досить марним , хоча тестування нормальності залишків після регресії може бути важливим.
EdM

2
Навіть без зв’язків тест KS - це не тест на загальну нормальність, а повністю визначений розподіл (ви оцінюєте середнє значення та sd за даними). Ваші p-значення будуть нісенітницею. Шукайте посилання на тест Лілліфорса
Glen_b -Встановіть Моніку

Відповіді:


10

Тут у вас є дві проблеми:

Тест KS призначений для постійного розподілу, і тому MYDATA не повинен містити зв'язків (повторних значень).

Теорія, що лежить в основі тесту KS, не дозволяє оцінити параметри розподілу за даними, як це було зроблено. Довідка для ks.test це пояснює.


чому ks.testу випадку з двома зразками хочеться, щоб зв'язки були зняті з обох xі y? Я маю на увазі, що я не маю зв'язків в xі y( unique(x)і unique(y)), але два вектори мають спільне значення. Чи не слід вважати зв'язки лише серед значень в xі в y?
Немесі

@Nemesi, якщо у вас є нове запитання, будь ласка, задайте його як таке за допомогою кнопки Задати питання.
mdewey

Я хоч цього було недостатньо, щоб бути іншим питанням, але ось це: stats.stackexchange.com/questions/389151/…
Nemesi

5

Як пояснив @mdewey, тест KS не підходить при оцінці параметрів з даних. Ви можете використовувати наступний код, який покладається на тест Андерсона-Дарлінга для нормальності, і не вимагає від вас введення середнього та stddev. Цей тест є більш сильним у точності, ніж тест Лілліфорса.

install.packages("nortest")
library(nortest)
ad.test(MYDATA)

"Точність" може бути для вузького, але неправильного пошуку. В обох випадках більшість застосувань будь-якого з цих тестів в гіршому випадку марні і в більшості випадків оманливі. Люди часто навчаються користуватися ними особами, які мають неправильне розуміння припущень щодо методів регресії. Я гадаю, що відносна слабкість тесту на KS зробила б насправді "кращим" використовувати ті більш потужні альтернативи, оскільки його результати будуть меншими шансів ввести в оману для наївного користувача.
DWin
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.