Odpowiednie testy normalności dla małych próbek

22

Do tej pory używałem statystyki Shapiro-Wilka do testowania założeń normalności w małych próbkach.

Czy możesz polecić inną technikę?

aL3xa
źródło
1
Oto kilka innych pytań, które mogą być interesujące: testowanie normalności jest zasadniczo bezużyteczne do dyskusji na temat wartości testowania normalności i co-jeśli-resztki-są-normalnie rozmieszczone-ale-y-jest- nie , dla dyskusji / wyjaśnienia, w jakim sensie normalność jest założeniem modelu liniowego.
gung - Przywróć Monikę
3
Wilk w Shapiro-Wilk odnosi się do Martina B. Wilka. Zbyt łatwo jest napisać „Wilks”, szczególnie (a) jeśli ktoś to powiedział lub napisał, a ty kopiujesz (b) wiesz o pracy w statystykach Samuela S. Wilksa, zupełnie innej osoby (c) otrzymujesz mylił się co do terminali w języku angielskim, biorąc pod uwagę jego inne zastosowania w liczbie mnogiej (statystyki, koty, psy, ...) i dzierżawcze, co jest powszechne nawet wśród tych, których pierwszym językiem jest angielski. Edytowałem ten wątek w miarę możliwości; Nie mogę sięgnąć w komentarze.
Nick Cox

Odpowiedzi:

24

FBasics pakiet R (część Rmetrics ) zawiera kilka testów normalność , obejmujący wiele popularnych testów częstościowym - Kołmogorow-smirnov Shapiro-Wilka Jarque-Bera, D'Agostino - wraz z otuliną do testu normalności w pakiecie północnym - Anderson – Darling, Cramer – von Mises, Lilliefors (Kolmogorov-Smirnov), Pearson chi – square i Shapiro – Francia. Dokumentacja pakietu zawiera również wszystkie ważne odniesienia. Oto demo, które pokazuje, jak korzystać z testów z północy .

Jednym ze sposobów, jeśli masz czas, jest skorzystanie z więcej niż jednego testu i sprawdzenie zgody. Testy różnią się na wiele sposobów, więc wybór „najlepszego” nie jest prosty. Z czego korzystają inni badacze w Twojej dziedzinie? Może się to różnić i najlepiej trzymać się przyjętych metod, aby inni zaakceptowali Twoją pracę. Często używam testu Jarque-Bera, częściowo z tego powodu, i Andersona-Darlinga dla porównania.

W celu porównania i omówienia zagadnień można zapoznać się z „Porównanie testów dla normalnej zmienności (Seier 2002) i „Porównanie różnych testów normalności” (Yazici; Yolacan 2007).

Testowanie tych metod do porównywania w języku R jest również trywialne dzięki wszystkim funkcjom dystrybucji . Oto prosty przykład z symulowanymi danymi (nie wydrukuję wyników, aby zaoszczędzić miejsce), chociaż wymagana byłaby pełniejsza prezentacja:

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)

Po uzyskaniu wyników z różnych testów dla różnych rozkładów możesz porównać, które były najbardziej skuteczne. Na przykład wartość p dla powyższego testu Jarque-Bera zwróciła 0,276 dla rozkładu normalnego (akceptacja) i <2,2e-16 dla cauchy (odrzucenie hipotezy zerowej).

Shane
źródło
Dzięki Shane, świetna odpowiedź! Cóż, „inni” z mojej dziedziny często używają SPSS, więc używają Kołmogorowa-Smirnowa (jeśli w ogóle sprawdzają normalność), chociaż test IMHO test Lilliefors jest lepszym wyborem, gdy dane są zbierane z próbki (gdy parametry są nieznany). Nauczono mnie, że Shapiro-Wilk jest odpowiedni dla małych próbek, i po prostu chciałem uzyskać więcej informacji o „testach normalności małych próbek” ... BTW, używam na północ w R! =)
aL3xa
12

Dla normalności, rzeczywisty Shapiro-Wilk ma dobrą moc w dość małych próbkach.

Głównym konkurentem w badaniach, które widziałem, jest bardziej ogólny Anderson-Darling, który radzi sobie całkiem dobrze, ale nie powiedziałbym, że było lepiej. Jeśli możesz wyjaśnić, jakie alternatywy Cię interesują, być może lepsza statystyka byłaby bardziej oczywista. [edytuj: jeśli oszacujesz parametry, test AD powinien być dostosowany do tego.]

[Zdecydowanie odradzam rozważanie Jarque-Bery w małych próbkach (które prawdopodobnie lepiej znane jako Bowman-Shenton w kręgach statystycznych - badali rozkład małych próbek). Asymptotyczny wspólny rozkład skośności i kurtozy w niczym nie przypomina rozkładu małych próbek - w ten sam sposób banan nie wygląda bardzo jak pomarańcza. Ma również bardzo niską moc w porównaniu z niektórymi interesującymi alternatywami - na przykład ma niską moc, aby wychwycić symetryczny rozkład bimodalny, który ma kurtozę zbliżoną do rozkładu normalnego.]

Często ludzie sprawdzają poprawność dopasowania z powodów, które nie są szczególnie dobre, lub odpowiadają na pytanie inne niż to, na które naprawdę chcą odpowiedzieć.

Na przykład prawie na pewno już wiesz, że twoje dane nie są tak naprawdę normalne (nie do końca), więc nie ma sensu próbować odpowiadać na pytanie, na które znasz odpowiedź - a test hipotez i tak nie odpowiada .

Biorąc pod uwagę, że wiesz, że nie masz jeszcze dokładnej normalności, twój test hipotezy normalności naprawdę daje odpowiedź na pytanie bliższe: „czy moja próbka jest wystarczająco duża, aby wykryć ilość nienormalności, którą mam”, podczas gdy prawdziwe pytanie, na które chcesz odpowiedzieć, jest zwykle bliższe „jaki jest wpływ tej nienormalności na inne rzeczy, którymi jestem zainteresowany?”. Test hipotezy mierzy wielkość próby, podczas gdy pytanie, na które chcesz odpowiedzieć, nie jest bardzo zależne od wielkości próby.

Są chwile, kiedy testowanie normalności ma jakiś sens, ale takie sytuacje prawie nigdy nie zdarzają się przy małych próbkach.

Dlaczego testujesz normalność?

Glen_b - Przywróć Monikę
źródło
Dzięki za świetną odpowiedź, a potem świetne pytanie. Ważne jest, aby uzyskać wgląd w tło problemu. Cóż, tyle razy widziałem ludzi wykonujących test t, test Pearsona lub ANOVA, nie mających pojęcia o kształcie rozkładu (który często jest mocno wypaczony) - techniki parametryczne „potrzebują” spełnionego założenia normalności. W psychologii (która jest moim obszarem zainteresowań) często mamy do czynienia z małymi próbkami, dlatego potrzebuję odpowiedniego testu normalności.
aL3xa
5
Ale normalność nigdy nie jest spełniona. Czasami jest to rozsądny opis danych, ale w rzeczywistości nie są one normalne. Chociaż rozsądne jest sprawdzenie, czy nie są normalne, gdy się je przyjmuje, nie jest szczególnie użyteczne, aby je przetestować (z powodów, które opisałem powyżej). Robię na przykład wykres qq, ale test hipotez odpowiada na złe pytanie w tej sytuacji. Testy t i anova zwykle działają dość dobrze, jeśli rozkłady nie są mocno przekrzywione. Lepszym podejściem może być zastosowanie procedur, które nie zakładają normalności - być może technik ponownego próbkowania.
Glen_b
Lub możesz użyć testów nieparametrycznych, kosztem mniejszej mocy. I nic nie jest absolutnie satysfakcjonujące w statystykach, nie jest to wyłącznie kwestia normalności. Jednak bootstrapping lub jackknifing nie są rozwiązaniem, gdy ktoś wprowadza się w założenia testu t i / lub ANOVA. Wątpię, czy techniki ponownego próbkowania w ogóle rozwiązują problemy z normalnością. Należy sprawdzić normalność zarówno graficznie (wykres gęstości, wykres pudełkowy, wykres QQ, histogram), jak i „numerycznie” (testy normalności, skośność, kurtoza itp.). Co sugerujesz? To całkowicie nie na temat, ale jak sprawdziłbyś, powiedzmy, założenia normalności ANOVA?
aL3xa
@ aL3xa Myślę, że podejście do randomizacji jest bardziej odpowiednie, biorąc pod uwagę Twoją dziedzinę badań; bez względu na fakt, że zwykłe testy parametryczne zapewniają dobre przybliżenie do dokładnych testów permutacyjnych, testy nieparametryczne również implikują pewne założenia (np. dotyczące kształtu rozkładu). Zastanawiam się nawet, jak moglibyśmy naprawdę zdefiniować, czym jest odstępstwo od normalności w badaniu na małej próbie. Myślę, że powinieneś poprosić o dalszą dyskusję na ten temat w osobnym pytaniu.
chl
10

Istnieje cała kategoria Wikipedii dotycząca testów normalności, w tym:

Myślę, że AD jest prawdopodobnie najlepszym z nich.

Rob Hyndman
źródło
1
Zgadzam się. Przeprowadziłem szybki test testu AD, Jarque-Bera i test Spiegelhaltera (1983), pod zerą, z wielkością próby 8, powtarzając 10.000 razy. Test AD utrzymuje nominalny wskaźnik odrzucenia i daje jednorodne odstępy, podczas gdy test JB jest straszny, Spiegelhalter jest średni.
shabbychef
1
@shabbychef Test Jarque-Bera opiera się na asymptotycznej normalności skośności próbki i kurtozie, co nie działa dobrze nawet dla n w niskich setkach . Jednak w celu uzyskania pożądanego współczynnika odrzucania można dostosować wartości krytyczne, np. Na podstawie wyników symulacji, jak w rozdziale 4.1 Thadewald, T i H. Buning, 2004, test Jarque-Bera i jego konkurentów w zakresie testowania normalności - Porównanie mocy , dyskusja Paper Economics 2004/9, School of Business and Economics, Free University of Berlin.
Silverfish,
3

Dla kompletności ekonometrycy lubią także test Kiefera i łososia z ich artykułu z Economics Letters z 1983 r. - podsumowuje on „znormalizowane” wyrażenia skośności i kurtozy, które są następnie rozkładane chi-kwadrat. Mam starą wersję C ++, którą napisałem w szkole podstawowej, którą mogłem przetłumaczyć na R.

Edycja: A oto najnowszy artykuł Bierensa (ponownie) wyprowadzający Jarque-Bera i Kiefer-Salmon.

Edycja 2: Przejrzałem stary kod i wydaje się, że to naprawdę ten sam test między Jarque-Bera i Kiefer-Salmon.

Dirk Eddelbuettel
źródło
2

W rzeczywistości test Kiefera z łososiem i test Jarque Bera są krytycznie różne, jak pokazano w kilku miejscach, ale ostatnio tutaj - Testy chwilowe dla standardowych rozkładów błędów: proste solidne podejście autorstwa Yi-Ting Chena. Konstrukcja testu łososia Kiefera jest solidna w obliczu struktur błędów typu ARCH, w przeciwieństwie do standardowego testu Jarque Bera. Artykuł Yi-Tinga Chena rozwija i omawia to, co według mnie może być obecnie najlepszymi testami.

Mark Salmon
źródło
4
Wydaje się, że Chen koncentruje się na większych zestawach danych, co ma sens, ponieważ czwarte, szóste i wyższe momenty zaangażowane w te testy zajmą trochę czasu, aby ustabilizować się do poziomów asymptotycznych. Ale testy dystrybucyjne są zwykle stosowane dla zestawów danych mniejszych niż 250 wartości (minimum badane w tym artykule). W rzeczywistości większość z nich staje się tak potężna dzięki większej ilości danych, że są to niewiele więcej niż przemyślenia w takich aplikacjach. A może dzieje się tu więcej niż widzę?
whuber
0

W przypadku próbek o wielkości <30 osób uważa się, że Shapiro-Wilk ma solidną moc - należy zachować ostrożność podczas dostosowywania poziomu istotności testu, ponieważ może to spowodować błąd typu II! [1]

Aliakbar Ahmadi
źródło
W małych próbkach testy dopasowania nie są na ogół w stanie odrzucić normalności.
Michael R. Chernick,
@MichaelChernick, co dzieje się w konkretnym przypadku? Jaki jest powód, dla którego mała „istota” jest „klasyfikowana” jako nienormalna?
Aliakbar Ahmadi