Co to jest test Grubbsa?
Test Grubbsa (ang. Grubbs’ test, extreme studentized deviate test) to test istotności dla jednej skrajnej wartości w próbie z rozkładu normalnego. Sprawdza, czy największa lub najmniejsza obserwacja leży dalej od średniej, niż można by oczekiwać przy danym n. Grubbs (1950) zaproponował statystykę równoważną standaryzowanej odległości skrajnej obserwacji od średniej. W pracy z 1969 roku opisał też wersje dla dwóch największych lub dwóch najmniejszych wartości (Grubbs, 1969). Ogólne pojęcie i inne metody wykrywania opisuje hasło obserwacja odstająca. Ten test dotyczy jednej zmiennej, a nie reszt modelu.
Jak go liczyć
Statystyka to G = max|xi − x̄| / s, gdzie s to odchylenie standardowe próby. Wartość krytyczną odczytuje się z tablic albo liczy z rozkładu t z n − 2 stopniami swobody. Wartość G powyżej krytycznej oznacza, że skrajna obserwacja jest istotnie odstająca. Test zakłada, że poza tą jedną wartością dane pochodzą z rozkładu normalnego.
Przykład
W danych symulowanych 20 osób czasy reakcji mają średnią 447.0 ms i SD = 57.3 ms, a najdłuższy czas to 640 ms. Statystyka G = 3.37 przekracza wartość krytyczną 2.71 (α = .05, test dwustronny), p < .001. Po odłożeniu tej osoby pozostałe 19 wyników nie odbiega od normalności w teście Shapiro–Wilka (p = .819).
Jak opisać w pracy
Na co uważać
- Test sprawdza jedną wartość naraz. Przy kilku skrajnych obserwacjach jedna może „ukryć” drugą, bo obie zawyżają SD. Leys i in. (2019) odradzają kryteria oparte na średniej i SD i zalecają medianę odchyleń bezwzględnych (MAD).
- Wynik istotny nie jest powodem usunięcia. Najpierw sprawdź, czy to błąd, czy prawdziwa wartość. Zasady opisuje wpis Czy można usunąć obserwacje odstające?
- Przy rozkładzie skośnym (np. czasy reakcji) test wskaże wartości naturalne dla takiego rozkładu. Obejrzyj najpierw wykres pudełkowy.
Porównanie metod wykrywania zawiera wpis Wartości odstające: jak je wykryć.
Test Grubbsa w R
Kod liczy statystykę Grubbsa, wartość krytyczną z rozkładu t dla testu dwustronnego i przybliżone p bez dodatkowych pakietów.
Test Grubbsa dla najdłuższego czasu reakcji
R
set.seed(2871)
x <- round(c(rnorm(19, 450, 40), 640)) # czasy reakcji (ms), osoba 20 = 640 ms
n <- length(x)
G <- max(abs(x - mean(x))) / sd(x) # statystyka Grubbsa
alfa <- 0.05
t_kr <- qt(alfa / (2 * n), n - 2, lower.tail = FALSE) # test dwustronny
G_kr <- (n - 1) / sqrt(n) * sqrt(t_kr^2 / (n - 2 + t_kr^2))
t_obs <- sqrt(n * (n - 2) * G^2 / ((n - 1)^2 - n * G^2))
p <- min(1, 2 * n * pt(t_obs, n - 2, lower.tail = FALSE)) # p (przybliżenie Bonferroniego)
round(c(n = n, srednia = mean(x), sd = sd(x), max = max(x)), 1)
round(c(G = G, G_kr = G_kr), 3)
signif(p, 2)Wynik w R
n srednia sd max
20.0 447.0 57.3 640.0
G G_kr
3.368 2.708
[1] 0.00062Bibliografia oprogramowania
Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (funkcje pakietów base i stats). W pracy podaj wersję R, której faktycznie użyto (sessionInfo()).
- 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/
Najczęstsze pytania
Kiedy można użyć testu Grubbsa?
Gdy zmienna poza podejrzaną wartością ma w przybliżeniu rozkład normalny i podejrzewasz jedną skrajną obserwację. Przy rozkładach skośnych i kilku odstających wartościach lepsze są metody odporne.
Czy test Grubbsa można powtarzać po usunięciu wartości?
Można, ale każde powtórzenie zmienia poziom błędu i łatwo usunąć prawdziwe dane. Przy kilku podejrzanych wartościach użyj wersji dla wielu obserwacji albo metod opartych na MAD.
Jak policzyć test Grubbsa bez pakietu w R?
Policz G = max(abs(x − mean(x))) / sd(x), a wartość krytyczną wyznacz z qt() dla α/(2n) i n − 2 stopni swobody, jak w przykładzie na tej stronie.
Powiązane hasła
Poradniki, w których użyjesz tego pojęcia
Wartości odstające: jak je wykryć i co z nimi zrobić
Reguły ustalone z góry, MAD zamiast ±3 SD, Mahalanobis i MCD, odległość Cooka, winsoryzacja, test Yuena, analiza wrażliwości i opis APA – z kodem R.
Czytaj →PoradnikCzy można usunąć obserwacje odstające?
Kiedy usunięcie wyniku jest uzasadnione, a kiedy staje się manipulacją: tabela decyzji, analiza wrażliwości w R i gotowy opis do pracy.
Czytaj →Potrzebujesz wsparcia w analizie danych?
Wybierz ofertę dopasowaną do pracy dyplomowej albo profesjonalnego projektu naukowego.
Wyceń analizęOferta dla studentówBibliografia i dalsza literatura naukowa (APA 7)
- Grubbs, F. E. (1950). Sample criteria for testing outlying observations. The Annals of Mathematical Statistics, 21(1), 27–58. https://doi.org/10.1214/aoms/1177729885 ● Otwarty dostęp
- Grubbs, F. E. (1969). Procedures for detecting outlying observations in samples. Technometrics, 11(1), 1–21. https://doi.org/10.1080/00401706.1969.10490657
- Leys, C., Delacre, M., Mora, Y. L., Lakens, D., & Ley, C. (2019). How to classify, detect, and manage univariate and multivariate outliers, with emphasis on pre-registration. International Review of Social Psychology, 32(1), Article 5. https://doi.org/10.5334/irsp.289 ● Otwarty dostęp
Cytowania BibTeX
@article{grubbs1950sample, author={Grubbs, Frank E.}, title={{Sample criteria for testing outlying observations}}, journal={The Annals of Mathematical Statistics}, year={1950}, volume={21}, number={1}, pages={27--58}, doi={10.1214/aoms/1177729885}}@article{grubbs1969procedures, author={Grubbs, Frank E.}, title={{Procedures for detecting outlying observations in samples}}, journal={Technometrics}, year={1969}, volume={11}, number={1}, pages={1--21}, doi={10.1080/00401706.1969.10490657}}@article{leys2019how, author={Leys, Christophe and Delacre, Marie and Mora, Youri L. and Lakens, Daniël and Ley, Christophe}, title={{How to classify, detect, and manage univariate and multivariate outliers, with emphasis on pre-registration}}, journal={International Review of Social Psychology}, year={2019}, volume={32}, number={1}, eid={5}, doi={10.5334/irsp.289}}