Test normalności rozkładu - Shapiro-Wilk, Kołmogorow-Smirnow i wykresy

Założenia · 8 min czytania
Ilustracja do artykułu: Test normalności rozkładu - Shapiro-Wilk, Kołmogorow-Smirnow i wykresy
W skrócie: normalność sprawdzasz w grupach, w różnicach albo w resztach, zależnie od analizy, a nie na całej zmiennej naraz. Test Shapiro-Wilka jest najczęściej najlepszym wyborem, a test Kołmogorowa-Smirnowa stosuj w wersji z poprawką Lillieforsa. Wynik testu silnie zależy od wielkości próby, dlatego zawsze łącz go z wykresem Q-Q, histogramem oraz skośnością i kurtozą. W pracy napisz krótko, czym sprawdzono normalność, jaki był wniosek i jaki test w związku z tym wybrano.

Sprawdzenie normalności rozkładu to zwykle pierwszy krok analizy, bo od niego zależy, czy użyjesz testu parametrycznego (np. testu t, ANOVA, korelacji Pearsona), czy jego nieparametrycznego odpowiednika. W tym wpisie dowiesz się, czym różni się test Shapiro-Wilka od testu Kołmogorowa-Smirnowa, dlaczego wynik testu tak mocno zależy od wielkości próby, jak czytać histogram i wykres Q-Q, jakie progi skośności i kurtozy mają oparcie w literaturze i jak to wszystko opisać w pracy.

Co dokładnie sprawdzać

Najczęstszy błąd to testowanie normalności „całej zmiennej w jednym worku”. Założenie normalności dotyczy tego, co trafia do modelu statystycznego, a to zależy od analizy:

AnalizaCzego rozkład sprawdzasz
Test t dla prób niezależnych, ANOVAzmiennej zależnej osobno w każdej grupie (lub reszt modelu)
Test t dla prób zależnychróżnic między pomiarami (np. „po” minus „przed”), a nie każdego pomiaru osobno
Regresja liniowareszt modelu, a nie zmiennej zależnej ani predyktorów
Korelacja Pearsonaobu zmiennych (przybliżona dwuwymiarowa normalność), w praktyce ocenia się też wykres rozrzutu

Przykład: porównujesz wynik testu wiedzy kobiet i mężczyzn. Gdy w grupach są różne średnie, cała zmienna może wyglądać na dwugarbną i „nienormalną”, choć w każdej grupie rozkład jest w porządku. Dlatego test liczysz w każdej grupie osobno. Przy pomiarach „przed i po” sprawdzasz rozkład różnic, co szerzej opisuje wpis o teście t dla prób zależnych, a w regresji rozkład reszt (zob. założenia regresji liniowej).

Test Shapiro-Wilka

Test Shapiro-Wilka (Shapiro i Wilk, 1965) porównuje uporządkowane wartości z próby z wartościami, jakich należałoby się spodziewać przy rozkładzie normalnym. Statystyka W przyjmuje wartości od 0 do 1, a im bliżej 1, tym lepsza zgodność z rozkładem normalnym. Hipotezy są następujące:

  • H0: rozkład w populacji jest normalny,
  • H1: rozkład w populacji nie jest normalny.

Shapiro-Wilk interpretacja jest więc odwrotna niż w większości testów, którymi weryfikujesz hipotezy badawcze. Tu „dobrym” wynikiem jest p > 0,05: brak podstaw do odrzucenia hipotezy o normalności. Wynik p < 0,05 oznacza, że rozkład istotnie odbiega od normalnego. W porównaniach symulacyjnych test normalności Shapiro-Wilka zwykle ma największą moc spośród popularnych testów (Razali i Wah, 2011), dlatego jest pierwszym wyborem w większości prac.

Test Kołmogorowa-Smirnowa i poprawka Lillieforsa

Test Kołmogorowa-Smirnowa mierzy największą odległość między dystrybuantą empiryczną z próby a dystrybuantą rozkładu teoretycznego (statystyka D). W klasycznej wersji wymaga, by średnia i odchylenie standardowe rozkładu normalnego były znane z góry. W badaniach prawie zawsze liczy się je z tej samej próby, a wtedy zwykły test K-S staje się bardzo zachowawczy i rzadko odrzuca normalność. Lilliefors (1967) wyznaczył poprawione wartości krytyczne dla takiej sytuacji.

W SPSS test K-S w procedurze Eksploracja jest już liczony z poprawką Lillieforsa (widać to w przypisie pod tabelą). Osobna procedura testu K-S dla jednej próby, zależnie od wersji programu i ustawień, może natomiast podawać wersję bez poprawki. Jeśli w pracy piszesz „test Kołmogorowa-Smirnowa”, dopisz, czy zastosowano poprawkę Lillieforsa. Przy wyborze między testami trzymaj się prostej zasady: w typowej pracy dyplomowej raportuj Shapiro-Wilka, a K-S z poprawką traktuj jako uzupełnienie.

Jak wielkość próby zmienia wynik testu

Testy normalności mają tę samą słabość co każdy test istotności: ich wynik zależy od liczebności. Przy małej próbie mają niską moc i przepuszczają nawet wyraźne odstępstwa (Ghasemi i Zahediasl, 2012). Przy dużej wykrywają odchylenia tak drobne, że nie mają żadnego znaczenia dla testu t czy ANOVA. Dobrze to widać na przykładzie, w którym kształt rozkładu się nie zmienia. Wszystkie próby poniżej pochodzą z tego samego, lekko prawoskośnego rozkładu (skośność w populacji około 0,5), a zmienia się tylko liczba obserwacji:

nSkośność w próbieW Shapiro-Wilkap
200,390,9890,996
500,440,9880,879
1000,460,9870,451
3000,480,9870,007
1 0000,490,986< 0,001
3 0000,500,986< 0,001

Statystyka W jest praktycznie taka sama, a p spada z 0,996 do wartości poniżej 0,001. Test K-S z poprawką Lillieforsa jest jeszcze mniej czuły: dla n = 300 daje p = 0,59, a próg 0,05 przekracza dopiero przy n = 1 000 (p = 0,014). Wniosek: przy kilkuset obserwacjach istotny wynik testu nie przesądza, że trzeba porzucić test parametryczny, a przy kilkunastu obserwacjach nieistotny wynik nie dowodzi normalności.

Wykres Q-Q i histogram

Dlatego test zawsze łączy się z oceną wizualną. Histogram pokazuje ogólny kształt: symetrię, jedno czy dwa „garby”, długi ogon z jednej strony. Przy małych próbach bywa jednak mylący, bo jego wygląd zależy od szerokości przedziałów. Bardziej czytelny jest wykres kwantyl-kwantyl (Q-Q), na którym każdy punkt to jedna obserwacja zestawiona z wartością oczekiwaną przy rozkładzie normalnym.

  • Punkty leżą blisko prostej: rozkład jest zbliżony do normalnego.
  • Punkty tworzą łuk wygięty w jedną stronę: rozkład jest skośny.
  • Punkty odginają się od prostej na obu końcach w przeciwne strony (kształt litery S): ogony są cięższe lub lżejsze niż w rozkładzie normalnym.
  • Pojedyncze punkty daleko od prostej na końcu: wartości odstające.

Pojedyncze skrajne punkty warto obejrzeć osobno, bo bywają błędem wpisania danych. Jak je wykrywać i co z nimi robić, opisuje wpis o wartościach odstających, a wybór typu wykresu wpis histogram, wykres pudełkowy i rozrzutu.

Skośność i kurtoza - jakie progi

Trzecim źródłem informacji są skośność (asymetria) i kurtoza (spłaszczenie lub smukłość rozkładu). W rozkładzie normalnym obie są równe 0 (programy takie jak SPSS czy jamovi podają kurtozę nadwyżkową, czyli pomniejszoną o 3). Kim (2013) proponuje progi zależne od wielkości próby, oparte na wartości z, czyli wskaźniku podzielonym przez jego błąd standardowy (SPSS podaje go w tej samej tabeli):

Liczebność próbyKiedy uznać rozkład za odbiegający od normalnego
poniżej 50|z| skośności lub kurtozy większe niż 1,96
od 50 do 300|z| większe niż 3,29
powyżej 300nie licz z; sygnałem jest bezwzględna skośność powyżej 2 lub kurtoza (w ujęciu „właściwym”, bez odejmowania 3) powyżej 7, ocena łącznie z histogramem

W polskich pracach często spotkasz też prostszą regułę „skośność i kurtoza w przedziale od -2 do 2”. Jest wygodna, ale traktuj ją jako orientacyjną i nie mieszaj jej z progami dla wartości z.

Przykład: gdy wskaźniki się nie zgadzają

Przykładowe dane: czas dojazdu na uczelnię (w minutach) w grupie 20 studentów: 6, 9, 9, 11, 11, 12, 14, 15, 15, 15, 17, 20, 20, 21, 21, 24, 25, 27, 30, 45. Średnia wynosi 18,35, mediana 16, odchylenie standardowe 9,02.

  • Shapiro-Wilk: W = 0,91, p = 0,054, czyli formalnie brak podstaw do odrzucenia normalności.
  • K-S z poprawką Lillieforsa: D = 0,15, p > 0,20.
  • Skośność 1,35 (SE = 0,51, z = 2,63) i kurtoza 2,77 (SE = 0,99, z = 2,79). Obie wartości z przekraczają 1,96.
  • Histogram i wykres Q-Q pokazują długi prawy ogon z jedną obserwacją (45 minut) wyraźnie odstającą.

Test „przepuścił” rozkład tylko dlatego, że próba jest mała. Skośność, wykresy i różnica między średnią a medianą mówią jednoznacznie: rozkład jest prawoskośny. W takiej sytuacji rozsądniej wybrać test nieparametryczny albo sprawdzić, czy wynik 45 minut nie jest błędem. Gdy normalność zostanie odrzucona, masz kilka poprawnych dróg, opisanych we wpisie test normalności odrzuca, i co teraz.

Jak bardzo testy parametryczne potrzebują normalności

Test t i ANOVA porównują średnie, a rozkład średniej z próby zbliża się do normalnego wraz ze wzrostem liczebności (centralne twierdzenie graniczne). Dlatego przy kilkudziesięciu osobach w grupie umiarkowana skośność zwykle nie zaburza wyników w istotny sposób. Bardziej szkodliwe bywają pojedyncze skrajne wartości, bardzo różne liczebności grup połączone z różnymi wariancjami oraz silna skośność przy małych grupach. Normalność to więc tylko jedno z założeń; drugie, równie często sprawdzane, opisuje wpis o jednorodności wariancji i teście Levene’a.

W praktyce program sam policzy wszystko, czego potrzebujesz. W SPSS testy Shapiro-Wilka i K-S z poprawką oraz wykres Q-Q uzyskasz w procedurze Eksploracja, zaznaczając wykresy normalności z testami. W jamovi i JASP test Shapiro-Wilka jest opcją w statystykach opisowych i w samych testach t oraz ANOVA. W R wystarczą polecenia shapiro.test(x) oraz qqnorm(x); qqline(x), a w Pythonie funkcja scipy.stats.shapiro(x). Pamiętaj tylko, by przy porównaniach grup podzielić plik albo wskazać zmienną grupującą, inaczej dostaniesz wynik dla całej zmiennej.

Najczęstsze błędy przy sprawdzaniu normalności

  • Test liczony na całej zmiennej zamiast w grupach, na różnicach albo na resztach.
  • Uznanie, że p > 0,05 przy kilkunastu osobach dowodzi normalności.
  • Rezygnacja z testu t przy kilkuset osobach tylko dlatego, że Shapiro-Wilk jest istotny, bez spojrzenia na wykres.
  • Zwykły test K-S bez poprawki Lillieforsa, gdy średnią i SD policzono z próby.
  • Brak informacji w pracy, jaką metodą oceniono rozkład i co z tego wynikło dla wyboru testu.

Jak opisać sprawdzenie normalności w pracy

W rozdziale z wynikami wystarczy krótka informacja: jakim testem sprawdzono normalność, w jakich grupach, jaki był wniosek i jaki test wybrano. Szczegółową tabelę możesz umieścić w aneksie. Przykład dla danych z poprzedniej sekcji:

Normalność rozkładu czasu dojazdu sprawdzono testem Shapiro-Wilka, wykresem Q-Q oraz wskaźnikami skośności i kurtozy. Test nie wykazał istotnego odstępstwa od normalności (W = 0,91, p = 0,054), jednak skośność (1,35; z = 2,63) i kurtoza (2,77; z = 2,79) przekraczały wartość krytyczną 1,96, a wykres Q-Q wskazywał na prawostronną asymetrię. Z tego powodu w dalszej analizie zastosowano test nieparametryczny.

W zapisie APA podaje się statystykę W z dwoma miejscami po przecinku i dokładne p. Niektóre źródła podają też stopnie swobody w nawiasie, np. W(20) = 0,91, gdzie liczba oznacza liczebność grupy. Jeśli nie masz pewności, który test wybrać po ocenie rozkładu, skorzystaj z przewodnika „Który test wybrać?”. Sprawdzenie założeń jest też elementem każdego raportu zamówionego w kreatorze wyceny analizy.

Najczęstsze pytania

Jak interpretować wynik testu Shapiro-Wilka?
Hipoteza zerowa mówi, że rozkład jest normalny. Jeśli p > 0,05, nie ma podstaw do jej odrzucenia i zwykle przyjmuje się, że założenie jest spełnione. Jeśli p < 0,05, rozkład istotnie odbiega od normalnego, ale przy dużej próbie oceń jeszcze wykresy i skośność.
Shapiro-Wilk czy Kołmogorow-Smirnow?
W większości prac lepszy jest Shapiro-Wilk, bo ma większą moc. Test Kołmogorowa-Smirnowa stosuj w wersji z poprawką Lillieforsa, gdy średnią i odchylenie liczysz z tej samej próby. Klasyczny K-S bez poprawki jest wtedy zbyt zachowawczy.
Czy normalność sprawdzać dla całej próby, czy w grupach?
Przy porównaniach grup sprawdzasz rozkład osobno w każdej grupie. Przy pomiarach powtarzanych sprawdzasz rozkład różnic, a w regresji rozkład reszt. Test na całej zmiennej łączącej różne grupy może dać mylący wynik.
Co zrobić, gdy przy dużej próbie test normalności jest istotny?
Przy kilkuset obserwacjach test wykrywa nawet drobne odchylenia. Obejrzyj wykres Q-Q i histogram oraz sprawdź skośność i kurtozę. Jeśli odstępstwo jest niewielkie, testy t i ANOVA zwykle pozostają odporne, a decyzję opisz w pracy.
Jakie wartości skośności i kurtozy są akceptowalne?
Jedna z propozycji (Kim, 2013) uzależnia próg od liczebności: dla prób poniżej 50 osób wartość z skośności lub kurtozy nie powinna przekraczać 1,96, dla prób od 50 do 300 wartości 3,29. Przy większych próbach patrzy się na bezwzględną skośność powyżej 2. Popularna reguła od -2 do 2 jest tylko orientacyjna.
Źródła:
  • Shapiro, S. S., & Wilk, M. B. (1965). An analysis of variance test for normality (complete samples). Biometrika, 52(3/4), 591-611.
  • Lilliefors, H. W. (1967). On the Kolmogorov-Smirnov test for normality with mean and variance unknown. Journal of the American Statistical Association, 62(318), 399-402. https://doi.org/10.1080/01621459.1967.10482916
  • Ghasemi, A., & Zahediasl, S. (2012). Normality tests for statistical analysis: A guide for non-statisticians. International Journal of Endocrinology and Metabolism, 10(2), 486-489. https://doi.org/10.5812/ijem.3505
  • Kim, H.-Y. (2013). Statistical notes for clinical researchers: Assessing normal distribution (2) using skewness and kurtosis. Restorative Dentistry & Endodontics, 38(1), 52-54. https://doi.org/10.5395/rde.2013.38.1.52
  • Razali, N. M., & Wah, Y. B. (2011). Power comparisons of Shapiro-Wilk, Kolmogorov-Smirnov, Lilliefors and Anderson-Darling tests. Journal of Statistical Modeling and Analytics, 2(1), 21-33.
Policzymy to za Ciebie
Test dobrany do hipotez, tabele, wykresy i opis w standardzie APA.
Wyceń analizę
Artykuł ma charakter edukacyjny. W razie wątpliwości skorzystaj z kreatora doboru analiz lub napisz do statystyka.