Co to są odporne błędy standardowe?
Odporne błędy standardowe (ang. heteroskedasticity-consistent standard errors, HC; nazywane też błędami White’a lub estymatorem kanapkowym, sandwich) to błędy standardowe współczynników regresji liczone bez założenia homoskedastyczności, czyli stałej wariancji reszt. Stosuje się je, gdy rozrzut wyników zmienia się wraz z predyktorem (heterogeniczność wariancji), co w psychologii zdarza się np. przy czasach reakcji czy liczbie objawów. Współczynniki b się nie zmieniają; zmieniają się błędy standardowe, przedziały ufności i wartości p.
HC0 a HC3
HC0: ωi = ei² · HC3: ωi = ei² / (1 − hi)²
X to macierz predyktorów, Ω – macierz diagonalna z wagami ωi, ei – reszta, a hi – dźwignia obserwacji i. HC0 to pierwotny estymator White’a (1980), zgodny także przy heteroskedastyczności. HC3 powiększa reszty obserwacji o dużej dźwigni, które prosta MNK dopasowuje „za dobrze”. Long i Ervin (2000) pokazali w symulacjach, że HC0 często prowadził do błędnych wniosków przy N ≤ 250, a HC3 działał dobrze nawet przy 25 obserwacjach; przy N ≤ 250 zalecają HC3.
Przykład
W próbie 30 pacjentów (dane symulowane) nachylenie regresji spadku objawów na liczbę sesji psychoterapii (od 7 do 38) wyniosło b = 0.265 punktu na sesję, a rozrzut wyników rósł z liczbą sesji, BP(1) = 6.81, p = .009. Klasyczny błąd standardowy nachylenia wyniósł 0.105 (p = .017), HC0 – 0.121 (p = .037), a HC3 – 0.142 (p = .072). Różnica między HC0 a HC3 bierze się z pacjentów z wieloma sesjami: największa dźwignia (h = .24, 38 sesji) zwiększa w HC3 kwadrat reszty 1.74 raza. Wniosek o istotności zależy więc od estymatora.
Jak zapisać w pracy
Na co uważać
- Wybór estymatora po obejrzeniu p. Zdecyduj o nim w planie analizy. Long i Ervin (2000) radzą nie uzależniać użycia odpornych błędów od testu wstępnego, a Hayes i Cai (2007) – stosować je w regresji MNK rutynowo (udostępniają też makra do SPSS i SAS).
- HC3 nie naprawia modelu. Jeśli lejek na wykresie reszt wynika z pominiętej nieliniowości lub interakcji, popraw model; diagnostykę pokazujemy w poradniku regresja wieloraka krok po kroku.
- Zależne obserwacje. HC0–HC3 zakładają niezależność obserwacji; dane z klas czy pomiary powtarzane wymagają błędów klastrowych albo modelu wielopoziomowego.
- Brak nazwy wariantu. Napisz, którego estymatora użyto, bo programy mają różne ustawienia domyślne; w R
sandwich::vcovHC()domyślnie liczy HC3 (przykład modelu ekonometrycznego z HC3 w poradniku statystyka w pracy z zarządzania i ekonomii).
Przykład w R
Kod porównuje klasyczny błąd standardowy nachylenia z estymatorami HC0 i HC3, liczy 95% przedział ufności z HC3, a na końcu odtwarza HC3 „ręcznie” ze wzoru kanapkowego, by pokazać rolę dźwigni.
Błędy standardowe HC0 i HC3 w pakiecie sandwich
R
suppressPackageStartupMessages({ library(sandwich); library(lmtest) })
# Dane symulowane: 30 pacjentów; liczba sesji psychoterapii i spadek objawów (punkty)
set.seed(60)
sesje <- round(6 + rgamma(30, shape = 1.5, rate = 0.12))
poprawa <- round(3 + 0.30 * sesje + rnorm(30, 0, 0.5 + 0.2 * sesje)) # rozrzut rośnie z liczbą sesji
range(sesje) # od 7 do 38 sesji
m <- lm(poprawa ~ sesje)
bptest(m) # test Breuscha–Pagana
# Nachylenie z trzema estymatorami macierzy kowariancji
typy <- c(klasyczne = "const", HC0 = "HC0", HC3 = "HC3")
round(sapply(typy, function(t) coeftest(m, vcov. = vcovHC(m, type = t))["sesje", ]), 3)
round(coefci(m, vcov. = vcovHC(m, type = "HC3"))["sesje", ], 2) # 95% CI z HC3
# HC3 krok po kroku: kwadrat reszty dzielony przez (1 − h)², h – dźwignia obserwacji
X <- model.matrix(m); h <- hatvalues(m); A <- solve(crossprod(X))
round(sqrt(diag(A %*% crossprod(X * resid(m) / (1 - h)) %*% A)), 3)
round(c(h_max = max(h), sesje = sesje[which.max(h)], mnoznik = 1 / (1 - max(h))^2), 2)Wynik w R
[1] 7 38
studentized Breusch-Pagan test
data: m
BP = 6.8129, df = 1, p-value = 0.00905
klasyczne HC0 HC3
Estimate 0.265 0.265 0.265
Std. Error 0.105 0.121 0.142
t value 2.536 2.194 1.872
Pr(>|t|) 0.017 0.037 0.072
2.5 % 97.5 %
-0.03 0.56
(Intercept) sesje
1.867 0.142
h_max sesje mnoznik
0.24 38.00 1.74 Bibliografia oprogramowania
Wyniki na tej stronie pochodzą z uruchomienia pokazanego kodu w R 4.5.3. W pracy podaj wersje faktycznie użytych pakietów (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/
- sandwich (wersja 3.1.1): Zeileis, A., Köll, S., & Graham, N. (2020). Various versatile variances: An object-oriented implementation of clustered covariances in R. Journal of Statistical Software, 95(1), 1–36. https://doi.org/10.18637/jss.v095.i01
- lmtest (wersja 0.9.40): Zeileis, A., & Hothorn, T. (2002). Diagnostic checking in regression relationships. R News, 2(3), 7–10. https://CRAN.R-project.org/doc/Rnews/
Najczęstsze pytania
Czym różni się HC3 od HC0?
HC0 (estymator White’a) używa kwadratów reszt, a HC3 dzieli je przez (1 − h)², powiększając reszty obserwacji o dużej dźwigni. Dlatego HC3 lepiej działa w małych próbach (Long i Ervin, 2000).
Jak policzyć błędy standardowe HC3 w R?
Dopasuj model lm() i wpisz lmtest::coeftest(model, vcov. = sandwich::vcovHC(model, type = "HC3")). Ten sam argument vcov. przyjmuje funkcja lmtest::coefci(), która liczy przedziały ufności.
Czy odporne błędy standardowe zmieniają współczynniki regresji?
Nie. Współczynniki b są takie same jak w zwykłej MNK; zmieniają się tylko błędy standardowe, a więc statystyki t, wartości p i przedziały ufności.
Powiązane hasła
Poradniki, w których użyjesz tego pojęcia
Regresja wieloraka krok po kroku
Model i hipotezy, przygotowanie danych, założenia i diagnostyka, ΔR², interpretacja b, β i sr², kod R, SPSS i opis APA – na jednym przykładzie.
Czytaj →PoradnikStatystyka w pracy z zarządzania i ekonomii
Ankieta wśród pracowników i model ekonometryczny na danych wtórnych: regresja, weryfikacja modelu, elastyczności, kod R i gotowe opisy wyników.
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)
- Hayes, A. F., & Cai, L. (2007). Using heteroskedasticity-consistent standard error estimators in OLS regression: An introduction and software implementation. Behavior Research Methods, 39(4), 709–722. https://doi.org/10.3758/bf03192961 ● Otwarty dostęp
- Long, J. S., & Ervin, L. H. (2000). Using heteroscedasticity consistent standard errors in the linear regression model. The American Statistician, 54(3), 217–224. https://doi.org/10.1080/00031305.2000.10474549
- White, H. (1980). A heteroskedasticity-consistent covariance matrix estimator and a direct test for heteroskedasticity. Econometrica, 48(4), 817–838. https://doi.org/10.2307/1912934
Cytowania BibTeX
@article{hayes2007using, author={Hayes, Andrew F. and Cai, Li}, title={{Using heteroskedasticity-consistent standard error estimators in OLS regression: An introduction and software implementation}}, journal={Behavior Research Methods}, year={2007}, volume={39}, number={4}, pages={709--722}, doi={10.3758/bf03192961}}@article{long2000using, author={Long, J. Scott and Ervin, Laurie H.}, title={{Using heteroscedasticity consistent standard errors in the linear regression model}}, journal={The American Statistician}, year={2000}, volume={54}, number={3}, pages={217--224}, doi={10.1080/00031305.2000.10474549}}@article{white1980heteroskedasticity, author={White, Halbert}, title={{A heteroskedasticity-consistent covariance matrix estimator and a direct test for heteroskedasticity}}, journal={Econometrica}, year={1980}, volume={48}, number={4}, pages={817--838}, doi={10.2307/1912934}}