2017-02-02 12 views
2

Я выполняю тесты на нормальность своих данных. В общем, я ожидал бы, что данные будут приблизительно нормальными (достаточно нормальными), что подтверждается гистограммой исходных значений и QQplot. histogram of data enter image description here Я выполнил испытания Колмогорова-Смирнова и Шапиро-Уилка, и здесь я смущен. Мои значения p почти равны 0. Статистика Колмогорова-Смирнова = 0,78, p-значение = 0,0 Статистика Shapiro-Wilk = 0.99, p-value = 1.2e-05 , которая заставила бы меня поверить, что я должен отклонить нулевую гипотезу , Я предполагал, что это связано с тем, что мое среднее и стандартное отклонение отличаются от 0 и 1, предположительно принимаемых для теста KS, как объяснялось here, но затем наткнулись на учебник по тестированию на нормальность в plotly, где для обоих тесты низких p-значений, по-видимому, поддерживают нулевую гипотезу! plotly tutorial on normality tests Было ли что-то изменено в способе проведения испытаний? Или это ошибка на странице учебника?Интерпретация p-ценности в тестах нормальности в Python

ответ

2

Это, кажется, ошибка в учебнике. Поскольку они заявляют (классическое определение), нулевая гипотеза состоит в том, что нет существенной разницы между ссылочным распределением и проверенным. Эта гипотеза должна быть отклонена, когда значение p меньше, чем ваш порог (когда тестовая статистика больше критического значения). Это также указано в том же учебном пособии по ссылке, где они дают больше информации о том, как принять или отклонить нулевую гипотезу.

Поэтому я считаю, что это ошибка. В обоих примерах нулевая гипотеза без разницы должна быть отклонена, так как p-значения кажутся меньше 0,05, а статистика испытаний больше их соответствующих критических значений.

2

Я только что загрузил набор данных из учебника и сыграл с ним Р. Я согласен с вами обоими, их выводы ошибочны и на тестах Шапиро, и на KS.

Кроме того, выполняя тест KS, вы должны использовать не только «норму», чтобы предлагать распределение, но и значения параметров. Действительно, ks.test(x,"pnorm", mean(x),sd(x)) даст вам p-значение 0.0475. Это имеет больше смысла, чем заявленное p-значение «0.0», поскольку непараметрический тест будет менее строгим, чем параметрический тест на p-значение.

Добавление гистограммы и qqplot для набора данных. enter image description here

enter image description here

+0

Спасибо! Я включил среднее значение и SD в свой kstest, и теперь действительно значение p> 0,1 указывает, что мои данные обычно распределяются. Благодаря! – branwen85