Słownik metodologiczny · Testy statystyczne

Test Lillieforsa – jak czytać test normalności z poprawką Lillieforsa?

Test Lillieforsa to test Kołmogorowa-Smirnowa dla normalności, gdy średnią i odchylenie standardowe szacuje się z próby. Pokazujemy, skąd bierze się jego p, jak go policzyć w R, gdzie znaleźć go w SPSS i jak opisać wynik.

Strona główna / Słownik / Test Lillieforsa
W skrócie: Test Lillieforsa sprawdza normalność rozkładu za pomocą statystyki D testu Kołmogorowa-Smirnowa, gdy średnią i odchylenie standardowe szacuje się z próby. Ma inne wartości krytyczne niż zwykły test K–S. Ma mniejszą moc niż test Shapiro-Wilka, więc traktuj go jako uzupełnienie wykresu Q-Q.

Co to jest test Lillieforsa?

Test Lillieforsa (ang. Lilliefors test) to test normalności oparty na statystyce D testu Kołmogorowa-Smirnowa, w którym średnią i odchylenie standardowe rozkładu normalnego szacuje się z tej samej próby. Lilliefors (1967) pokazał, że standardowe tablice testu K–S są wtedy niewłaściwe, i podał nowe wartości krytyczne wyznaczone metodą Monte Carlo. Dlaczego zwykłe p zawodzi, pokazuje na rysunkach hasło o teście K–S. Tu wyjaśniamy, jak test Lillieforsa policzyć, odczytać i opisać.

Jak go liczyć i czytać?

  • Statystyka: D to największa odległość między dystrybuantą empiryczną a dystrybuantą rozkładu normalnego o średniej i SD z próby.
  • Hipoteza zerowa: rozkład jest normalny, przy dowolnej średniej i SD. Gdy p < .05, odrzucasz normalność.
  • SPSS: procedura Eksploracja z opcją wykresów normalności podaje test K–S z poprawką Lillieforsa obok testu Shapiro-Wilka (Ghasemi i Zahediasl, 2012).
  • R: funkcja lillie.test() z pakietu nortest. Wartość p liczy ze wzoru Dallala i Wilkinsona (1986), którzy poprawili tablicę Lillieforsa i podali analityczne przybliżenie p poniżej .10.

Przykład

Czas wypełniania ankiety u 60 osób (dane symulowane) miał M = 23.0 min i SD = 9.4 min, z prawostronną skośnością. Test Lillieforsa dał D = .117, p = .041. Zwykły ks.test() z parametrami z próby zwrócił to samo D, ale p = .388, co prowadziłoby do błędnego wniosku o normalności. Test Shapiro-Wilka: W = .957, p = .033.

Jak opisać w pracy

Normalność rozkładu czasu wypełniania ankiety oceniono testem Kołmogorowa-Smirnowa z poprawką Lillieforsa i testem Shapiro-Wilka. Oba testy wskazały odstępstwo od rozkładu normalnego, D = .117, p = .041; W = .957, p = .033, co potwierdził wykres Q-Q.

Na co uważać

  • Mniejsza moc. Test Shapiro-Wilka ma większą moc niż test K–S nawet po poprawce Lillieforsa (Ghasemi i Zahediasl, 2012).
  • Wielkość próby. W dużej próbie test wychwyci nieistotne odchylenia, w małej przeoczy wyraźne. Zawsze dołącz wykres Q-Q.
  • Co testujesz. W regresji i ANOVA założenie dotyczy reszt, a nie surowych zmiennych – zob. normalność reszt czy zmiennych.

Pełną procedurę oceny normalności opisuje wpis jak sprawdzić normalność rozkładu.

Przykład reprodukowalny

Test Lillieforsa w R

Kod liczy test Lillieforsa, ten sam test K–S bez poprawki i test Shapiro-Wilka dla prawostronnie skośnych danych.

Test Lillieforsa, K–S bez poprawki i Shapiro-Wilk

Dane wejściowe: czas wypełniania ankiety w minutach u 60 osób (dane symulowane, set.seed(2964)).

Co odczytać: D i p-value z testu Lillieforsa, p_bez_poprawki ze zwykłego ks.test() oraz W i p-value testu Shapiro-Wilka.

R
library(nortest)
set.seed(2964)
czas <- round(rgamma(60, shape = 6, rate = 0.25))   # czas wypełniania ankiety, min (dane symulowane)
lillie.test(czas)                                   # D i p z poprawką Lillieforsa
ks <- suppressWarnings(ks.test(czas, "pnorm", mean(czas), sd(czas)))
round(c(D = unname(ks$statistic), p_bez_poprawki = ks$p.value), 3)  # to samo D, zawyżone p
shapiro.test(czas)
Wynik w R

	Lilliefors (Kolmogorov-Smirnov) normality test

data:  czas
D = 0.11667, p-value = 0.04112

             D p_bez_poprawki 
         0.117          0.388 

	Shapiro-Wilk normality test

data:  czas
W = 0.95687, p-value = 0.03316

Bibliografia oprogramowania

Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (pakiet nortest).

  1. R: R Core Team. (2026). R: A language and environment for statistical computing (Version 4.5.3) [Computer software]. R Foundation for Statistical Computing. https://www.R-project.org/
  2. nortest (wersja 1.0.4): Gross, J., & Ligges, U. (2015). nortest: Tests for normality [R package]. https://doi.org/10.32614/CRAN.package.nortest

Najczęstsze pytania

Czym test Lillieforsa różni się od testu Kołmogorowa-Smirnowa?

Statystyka D jest ta sama. Test Lillieforsa uwzględnia jednak, że średnią i odchylenie standardowe oszacowano z tej samej próby, i stosuje inne wartości krytyczne. Zwykły test K–S daje wtedy zawyżone p.

Jak policzyć test Lillieforsa w R?

Użyj funkcji lillie.test() z pakietu nortest. Wywołanie ks.test(x, "pnorm", mean(x), sd(x)) daje to samo D, ale zbyt duże p, bo pomija poprawkę Lillieforsa.

Który test normalności wybrać: Lillieforsa czy Shapiro-Wilka?

Zwykle Shapiro-Wilka, bo ma większą moc. Test Lillieforsa podaj, gdy wymaga go promotor lub czasopismo, i zawsze dołącz wykres Q-Q.

Powiązane hasła

Poradniki, w których użyjesz tego pojęcia

Potrzebujesz wsparcia w analizie danych?

Wybierz ofertę dopasowaną do pracy dyplomowej albo profesjonalnego projektu naukowego.

Wyceń analizęOferta dla studentów

Bibliografia i dalsza literatura naukowa (APA 7)

  1. Dallal, G. E., & Wilkinson, L. (1986). An analytic approximation to the distribution of Lilliefors's test statistic for normality. The American Statistician, 40(4), 294–296. https://doi.org/10.1080/00031305.1986.10475419
  2. 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 ● Otwarty dostęp
  3. 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

Cytowania BibTeX

@article{dallal1986analytic, author={Dallal, Gerard E. and Wilkinson, Leland}, title={{An analytic approximation to the distribution of Lilliefors's test statistic for normality}}, journal={The American Statistician}, year={1986}, volume={40}, number={4}, pages={294--296}, doi={10.1080/00031305.1986.10475419}}
@article{ghasemi2012normality, author={Ghasemi, Asghar and Zahediasl, Saleh}, title={{Normality tests for statistical analysis: A guide for non-statisticians}}, journal={International Journal of Endocrinology and Metabolism}, year={2012}, volume={10}, number={2}, pages={486--489}, doi={10.5812/ijem.3505}}
@article{lilliefors1967kolmogorov, author={Lilliefors, Hubert W.}, title={{On the Kolmogorov-Smirnov test for normality with mean and variance unknown}}, journal={Journal of the American Statistical Association}, year={1967}, volume={62}, number={318}, pages={399--402}, doi={10.1080/01621459.1967.10482916}}
R