Подходящие тесты нормальности для маленьких образцов

22

До сих пор я использовал статистику Шапиро-Уилка, чтобы проверить предположения о нормальности в небольших выборках.

Не могли бы вы порекомендовать другую технику?

aL3xa
источник
1
Вот пара других вопросов, которые могут представлять интерес: тестирование нормальности, по сути, бесполезное , для обсуждения ценности тестирования нормальности, и что, если остатки нормально распределены, но у них есть нет , для обсуждения / уточнения смысла, в котором нормальность является допущением линейной модели.
gung - Восстановить Монику
3
Вилк в Шапиро-Вилк относится к Мартину Б. Вилк. Слишком просто написать «Уилкс», особенно (а) если кто-то сказал или написал это, а вы копируете (б) вы знаете о статистике Сэмюэля С. Уилкса, совершенно другого человека (с), которого вы получаете запутался в терминале "s" на английском языке, учитывая его другое использование для множественного числа (статистика, кошки, собаки, ...) и притяжательные (ые), что характерно даже для тех, чей родной язык английский. Я отредактировал эту тему настолько, насколько смог; Я не могу добраться до комментариев.
Ник Кокс

Ответы:

24

Пакет fBasics в R (входит в Rmetrics ) включает в себя несколько тестов на нормальность , охватывающих многие популярные тесты для часто встречающихся участников - Колмогорова-Смирнова, Шапиро-Вилка, Жарка-Бера и Д'Агостино, а также оболочку для тестов на нормальность. в пакете « самый крутой» - Андерсон – Дарлинг, Крамер – фон Мизес, Лиллифорс (Колмогоров-Смирнов), Хи-квадрат Пирсона и Шапиро – Франсия. Документация пакета также содержит все важные ссылки. Вот демонстрация, которая показывает, как использовать тесты от Nortest .

Один из подходов, если у вас есть время, состоит в том, чтобы использовать более одного теста и проверить согласие. Тесты различаются по нескольким параметрам, поэтому не совсем просто выбрать «лучший». Что используют другие исследователи в вашей области? Это может варьироваться, и может быть лучше придерживаться принятых методов, чтобы другие приняли вашу работу. Я часто использую тест Жарк-Бера, частично по этой причине, и Андерсон-Дарлинг для сравнения.

Вы можете посмотреть «Сравнение тестов для одномерной нормальности» (Seier 2002) и «Сравнение различных тестов нормальности» (Yazici; Yolacan 2007) для сравнения и обсуждения проблем.

Также тривиально проверить эти методы для сравнения в R, благодаря всем функциям распределения . Вот простой пример с имитированными данными (я не буду распечатывать результаты для экономии места), хотя потребуется более полная экспозиция:

library(fBasics); library(ggplot2)
set.seed(1)

# normal distribution
x1 <- rnorm(1e+06)   
x1.samp <- sample(x1, 200)
qplot(x1.samp, geom="histogram")
jbTest(x1.samp)
adTest(x1.samp)

# cauchy distribution
x2 <- rcauchy(1e+06)
x2.samp <- sample(x2, 200)
qplot(x2.samp, geom="histogram")
jbTest(x2.samp)
adTest(x2.samp)

Получив результаты различных тестов в разных дистрибутивах, вы сможете сравнить наиболее эффективные. Например, p-значение для теста Жарке-Бера, приведенного выше, вернуло 0,276 для нормального распределения (принимая) и <2,2e-16 для Коши (отвергнув нулевую гипотезу).

Шейн
источник
Спасибо Шейн, отличный ответ! Ну, «другие» из моей области часто используют SPSS, поэтому они используют Колмогорова-Смирнова (если они вообще проверяют нормальность), хотя ИМХО тест Лиллифорса - лучший выбор, когда данные собираются из выборки (когда параметры неизвестен). Меня учили, что Шапиро-Уилка подходит для небольших выборок, и я просто хотел получить больше информации о «тестах нормальности малых выборок» ... Кстати, я использую nortest в R! =)
aL3xa
12

Для нормальности настоящий Шапиро-Уилк обладает хорошей мощностью в довольно небольших выборках.

Основным конкурентом в исследованиях, которые я видел, является более общий Андерсон-Дарлинг, который справляется довольно хорошо, но я бы не сказал, что это было лучше. Если вы сможете уточнить, какие альтернативы вас интересуют, возможно, лучшая статистика будет более очевидной. [править: если вы оцениваете параметры, тест AD должен быть скорректирован для этого.]

[Я настоятельно рекомендую не рассматривать Jarque-Bera в небольших выборках (которые, вероятно, более известны как Bowman-Shenton в статистических кругах - они изучали распределение малых выборок). Асимптотическое распределение суставов по асимметрии и эксцентричности не имеет ничего общего с распределением малых выборок - точно так же банан не очень похож на апельсин. Он также имеет очень низкую мощность по сравнению с некоторыми интересными альтернативами - например, он имеет низкую мощность, чтобы подобрать симметричное бимодальное распределение, которое имеет эксцесс, близкий к нормальному распределению.]

Часто люди проверяют пригодность по тем или иным причинам, или они отвечают на вопрос, отличный от того, на который они действительно хотят ответить.

Например, вы почти наверняка уже знаете, что ваши данные не совсем нормальны (не совсем), поэтому нет смысла пытаться ответить на вопрос, на который вы знаете ответ - и тест на гипотезу на самом деле не дает ответа в любом случае .

Учитывая, что вы уже знаете, что у вас нет точной нормальности, ваш тест на гипотезу о нормальности действительно дает вам ответ на вопрос, более близкий к тому, «достаточно ли большой размер моей выборки, чтобы определить количество ненормальностей, которые у меня есть», в то время как реальный вопрос, на который вы хотите ответить, обычно ближе к «каково влияние этой ненормальности на другие вещи, которые меня интересуют?». Проверка гипотезы измеряет размер выборки, в то время как вопрос, на который вы хотите ответить, не очень зависит от размера выборки.

Бывают случаи, когда проверка нормальности имеет какой-то смысл, но такие ситуации почти никогда не встречаются с небольшими выборками.

Почему вы проверяете нормальность?

Glen_b - Восстановить Монику
источник
Спасибо за отличный ответ и отличный вопрос после этого. Очень важно получить представление об истории проблемы. Ну, так много раз я видел, как люди делали t-тест, r Пирсона или ANOVA, не имея представления о форме распределения (которая часто сильно искажена) - параметрические методы «нуждаются» в удовлетворении предположения о нормальности. В психологии (которая является моей областью интересов) мы часто имеем дело с небольшими образцами, поэтому мне нужен соответствующий тест на нормальность.
aL3xa
5
Но нормальность никогда не удовлетворяется. Иногда это разумное описание данных, но они на самом деле не являются нормальными. Хотя разумно проверять ненормальность, когда вы предполагаете это, проверять это не особенно полезно (по причинам, которые я описал выше). Например, я делаю qq-сюжет, но проверка гипотезы дает ответ на неправильный вопрос в этой ситуации. t-тесты и anova обычно работают достаточно хорошо, если распределения не сильно искажены. Лучшим подходом может быть использование процедур, которые не предполагают нормальности - возможно, методы повторной выборки.
Glen_b
Или вы можете использовать непараметрические тесты, имея меньшую мощность. И ничто в статистике не совсем устраивает, это не только вопрос нормальности. Тем не менее, начальная загрузка или джекнифинг не являются решением проблемы, когда кто-то вводит допущения в t-test и / или ANOVA. Я сомневаюсь, что методы передискретизации решают проблемы нормальности вообще. Необходимо проверять нормальность как графически (график плотности, блок-график, QQplot, гистограмма), так и «численно» (тесты нормальности, асимметрия, эксцесс и т. Д.). Что ты посоветуешь? Это совершенно не по теме, но как бы вы проверили, скажем, допущения нормальности ANOVA?
aL3xa
@ aL3xa Я думаю, что подход рандомизации лучше подходит для вашей области исследований; несмотря на тот факт, что обычные параметрические тесты обеспечивают хорошее приближение к точным тестам перестановки, непараметрические тесты также предполагают какое-то предположение (например, о форме распределения). Я даже удивляюсь, как мы можем реально определить, что является отклонением от нормы в исследованиях с малой выборкой. Я думаю, что вы должны попросить дальнейшего обсуждения по этому вопросу в отдельном вопросе.
ЧЛ
10

Существует целая категория Википедии о тестах на нормальность, включая:

Я думаю, что AD, вероятно, лучший из них.

Роб Хиндман
источник
1
Я согласен. Я выполнил быструю проверку AD, Jarque-Bera и Spiegelhalter (1983), под нулевым значением, с размером выборки 8, повторяя 10000 раз. Тест AD поддерживает номинальную скорость отклонения и дает одинаковые оценки, в то время как тест JB ужасен, Spiegelhalter находится на среднем уровне.
Шаббычеф
1
@shabbychef Тест Jarque-Bera основан на асимптотической нормальности асимметрии и эксцессы выборки, которая не работает хорошо даже для n в низких 100 . Но чтобы получить желаемый уровень отклонения, вы можете отрегулировать критические значения, например, на основе результатов моделирования, как в Разделе 4.1 Thadewald, T, и H. Buning, 2004, Jarque-Bera test и его конкурентов для проверки нормальности - Сравнение мощности , Обсуждение Paper Economics 2004/9, Школа бизнеса и экономики, Свободный университет Берлина.
Серебряная рыба
3

Для полноты, эконометрики также нравится критерий Кифера и Сэлмона из их статьи 1983 года в журнале «Экономические письма» - он суммирует «нормализованные» выражения асимметрии и эксцесса, которые затем распределяются по хи-квадрат. У меня есть старая версия C ++, которую я написал в аспирантуре, которую я мог перевести на R.

Редактировать: А вот недавняя статья Бьеренса (пере), производная Жарк-Бера и Кифер-Сэлмон.

Редактировать 2: Я просмотрел старый код, и кажется, что это действительно один и тот же тест между Jarque-Bera и Kiefer-Salmon.

Дирк Эддельбюттель
источник
2

Фактически, тест Кифера Сэлмона и тест Жарке Бера критически отличаются, как показано в нескольких местах, но совсем недавно здесь - Моментальные тесты для стандартизированного распределения ошибок: простой надежный подход Йи-Тинга Чена. Тест Кифера Сэлмона по своей конструкции является устойчивым в отношении структур ошибок типа ARCH, в отличие от стандартного теста Жарке Бера. Статья Йи-Тинга Чена разрабатывает и обсуждает, как мне кажется, лучшие тесты на данный момент.

Марк Салмон
источник
4
Кажется, Чен сосредоточился на больших наборах данных, что имеет смысл, потому что четвертому, шестому и более высоким моментам, задействованным в этих тестах, понадобится некоторое время для установления асимптотических уровней. Но тесты распределения обычно используются для наборов данных, меньших 250 значений (минимум, изученный в этой статье). На самом деле, большинство из них становятся настолько мощными при больших объемах данных, что в таких приложениях они немного больше, чем запоздалая мысль. Или здесь происходит больше, чем я вижу?
whuber
0

Считается, что для образцов размером <30 субъектов Шапиро-Уилк обладает мощной силой - будьте осторожны при настройке уровня значимости теста, поскольку это может вызвать ошибку типа II! [1]

Алиакбар Ахмади
источник
В небольших образцах тесты на пригодность, как правило, не могут отклонить нормативность.
Майкл Р. Черник
@MichaelChernick, что происходит в конкретном случае тогда? В чем причина того, что маленькое маленькое существо «классифицируется» как ненормальное?
Алиакбар Ахмади