Oferty statystyczne Tutoriale Opinie Kontakt

Odległość Cooka – wzór, progi i przykład

Odległość Cooka (dystans Cooka, D) mierzy, jak bardzo jedna obserwacja zmienia wyniki regresji. Typowe pytanie z pracy dyplomowej: czy jedna osoba o nietypowych wynikach nie „ustawia” sama całej linii regresji?

W prostych słowachWyobraź sobie, że usuwasz z danych jedną osobę i liczysz regresję od nowa. Jeśli prosta prawie się nie rusza, osoba ma mały wpływ. Jeśli wyraźnie się przechyla, osoba jest wpływowa. Odległość Cooka liczy ten ruch dla każdej osoby bez wielokrotnego dopasowywania modelu. Duży wpływ pojawia się zwykle wtedy, gdy osoba jest jednocześnie nietypowa na osi x i źle dopasowana do prostej.

Kiedy stosować odległość Cooka?

  • po dopasowaniu regresji liniowej (prostej lub wielorakiej), jako część diagnostyki modelu;
  • gdy na wykresie rozrzutu widzisz punkty odsunięte od reszty;
  • przy małych próbach, w których jedna osoba może zmienić wnioski;
  • zanim zdecydujesz, czy obserwację sprawdzić, poprawić (pomyłka we wpisywaniu) albo opisać w analizie wrażliwości.

Odległość Cooka łączy dwie rzeczy: wartość dźwigni, czyli nietypowość na osi x, i wielkość reszty, którą lepiej opisują reszty standaryzowane i reszty studentyzowane. Wszystkie te miary należą do diagnostyki regresji liniowej.

Wzór na odległość Cooka

$$ D_i = \frac{e_i^2}{p \cdot MSE} \cdot \frac{h_i}{(1 - h_i)^2} \qquad MSE = \frac{\sum e_i^2}{n - p} $$
\(e_i\)
reszta i-tej osoby: jej wynik minus przewidywanie z prostej (\(y_i - \hat{y}_i\))
\(h_i\)
dźwignia i-tej osoby – tym większa, im dalej osoba leży od średniej x
\(p\)
liczba parametrów modelu razem ze stałą (w regresji prostej p = 2)
\(MSE\)
średni kwadrat reszt, czyli „typowy” rozrzut punktów wokół prostej
\(n\)
liczba obserwacji

Ten sam wynik daje definicja: suma kwadratów zmian wszystkich przewidywań po usunięciu i-tej osoby, podzielona przez \(p \cdot MSE\).

Przykład krok po kroku

Ci sami studenci co w haśle o korelacji Pearsona: godziny nauki x = 1, 2, 3, 4, 5 i punkty y = 4, 2, 8, 6, 10. Prosta regresji ma postać ŷ = 1,2 + 1,6x.

Tabela 1. Reszty, dźwignie i odległości Cooka
xyŷe = y − ŷe²hD
142,81,21,440,60,56
224,4−2,45,760,30,37
386,02,04,000,20,13
467,6−1,62,560,30,16
5109,20,80,640,60,25
Σ = 15Σ = 3030014,42,0–
  1. Reszty. Dla pierwszej osoby ŷ = 1,2 + 1,6 · 1 = 2,8, więc e = 4 − 2,8 = 1,2. Suma kwadratów reszt wynosi 14,4.
  2. MSE. MSE = 14,4 / (5 − 2) = 4,8; przy p = 2 mianownik pierwszego ułamka to p · MSE = 9,6.
  3. Dźwignie. h = 1/5 + (x − 3)²/10, np. dla x = 1: 0,2 + 4/10 = 0,6.
  4. Odległość Cooka osoby 1. D = 1,44 / 9,6 · 0,6 / 0,4² = 0,15 · 3,75 = 0,56.
  5. Progi. Największe D = 0,56 (osoba 1) jest mniejsze niż 4/n = 0,80 i mniejsze niż 1. Żadna osoba nie jest wyraźnie wpływowa.

Dopiszmy szóstą osobę, która uczyła się 10 godzin, a zdobyła tylko 2 punkty. Jej D = 7,39 – wielokrotnie więcej niż oba progi. Sama ta osoba zmienia nachylenie prostej z 1,6 na −0,14 punktu na godzinę.

Dwa wykresy słupkowe odległości Cooka: dla pięciu osób największa wartość 0,56 poniżej progów 0,80 i 1; po dopisaniu szóstej osoby jej odległość wynosi 7,39
Rys. 1. Odległości Cooka dla pięciu osób (po lewej) i po dopisaniu szóstej (po prawej). Linia przerywana to umowny próg 4/n (0,80 przy pięciu osobach, 0,67 przy sześciu), a ciągła – D = 1. Szósta osoba z D = 7,39 wyraźnie odstaje. Uwaga: osie pionowe mają różną skalę.
Wykres rozrzutu sześciu osób z dwiema prostymi: bez szóstej osoby nachylenie 1,6, z szóstą osobą nachylenie minus 0,14
Rys. 2. Co mierzy D? Szara przerywana linia to prosta bez szóstej osoby (ŷ = 1,2 + 1,6x), czerwona – z nią (ŷ = 5,93 − 0,14x). Im mocniej jedna obserwacja przechyla prostą, tym większa jest jej odległość Cooka.
Panel Obserwacje wpływowe z aplikacji SZTOS: dźwignia na osi poziomej, reszty standaryzowane na pionowej, przerywane linie konturowe odległości Cooka; szósta osoba z dźwignią 0,84 leży poza liniami
Rys. 3. Panel „Obserwacje wpływowe” z wizualnej diagnostyki modelu w aplikacji SZTOS dla sześciu osób. Oś pozioma to dźwignia, pionowa – reszta standaryzowana. Punkty poza przerywanymi liniami (podpisanymi „0.6”) mają odległość Cooka większą niż ok. 0,55 – pakiet performance przyjmuje tu medianę rozkładu F z 1 i 4 stopniami swobody i zaokrągla ją na wykresie do jednego miejsca po przecinku. Czerwony punkt to szósta osoba: duża dźwignia (0,84) i spora reszta dają razem duży wpływ.

Jak zinterpretować i opisać wynik?

Nie ma jednego „oficjalnego” progu. Cook i Weisberg (1982) traktują D > 1 jako wyraźny sygnał, a próg 4/n (Bollen i Jackman, 1990) jest ostrzejszy i służy raczej do wskazania obserwacji wartych sprawdzenia. Oba progi są umowne, więc zawsze patrz też na wykres. Wpływowa obserwacja nie jest automatycznie błędem. Sprawdź, czy nie ma pomyłki we wpisywaniu i czy osoba należy do badanej populacji, a potem policz model z nią i bez niej. W pracy opisz obie wersje, zamiast po cichu usuwać niewygodne dane.

Zapis w stylu APA: Diagnostyka obserwacji wpływowych nie wykazała problemów: największa odległość Cooka wyniosła D = 0,56 (osoba 1) i nie przekroczyła progu 4/n = 0,80.

Jak policzyć odległość Cooka w R?

godziny <- c(1, 2, 3, 4, 5)
punkty  <- c(4, 2, 8, 6, 10)
m <- lm(punkty ~ godziny)

# 1) „ręcznie”, dokładnie według wzoru
e <- resid(m); h <- hatvalues(m)
p <- length(coef(m))                    # 2 parametry: stała i nachylenie
MSE <- sum(e^2) / (length(e) - p)       # 14.4 / 3 = 4.8
round(e^2 / (p * MSE) * h / (1 - h)^2, 3)

# 2) gotową funkcją
round(cooks.distance(m), 3)
which(cooks.distance(m) > 4 / 5)        # próg 4/n

# 3) szósta osoba: 10 godzin nauki i tylko 2 punkty
m6 <- lm(c(punkty, 2) ~ c(godziny, 10))
round(cooks.distance(m6), 2)

Wynik w konsoli R:

    1     2     3     4     5 
0.563 0.367 0.130 0.163 0.250 
    1     2     3     4     5 
0.563 0.367 0.130 0.163 0.250 
named integer(0)
   1    2    3    4    5    6 
0.11 0.24 0.07 0.00 0.24 7.39 

Funkcja cooks.distance() liczy dokładnie to samo co wzór. which() zwraca pusty wynik, bo żadna z pięciu osób nie przekracza progu 4/n.

Odległość Cooka a obserwacja odstająca – czy to to samo?

Nie. Obserwacja odstająca ma nietypowy wynik y przy danym x, czyli dużą resztę. Obserwacja wpływowa zmienia wyniki modelu. Punkt z dużą resztą położony blisko średniej x zwykle niewiele zmienia nachylenie. Punkt daleko na osi x, który leży na przedłużeniu prostej, ma dużą dźwignię, ale mały wpływ. Odległość Cooka jest duża dopiero wtedy, gdy obie rzeczy występują razem – jak u naszej szóstej osoby.

Najczęstsze błędy

  • Usuwanie obserwacji tylko dlatego, że przekroczyły 4/n, bez sprawdzenia przyczyny i bez analizy wrażliwości.
  • Liczenie D ze wzoru bez MSE w mianowniku – wynik zależy wtedy od jednostek y.
  • Utożsamianie obserwacji wpływowej z odstającą.
  • Patrzenie na jeden próg bez wykresu.
  • „Czyszczenie” danych w kółko: po usunięciu jednej osoby zawsze pojawi się kolejna „najbardziej wpływowa”.

Bibliografia

  1. Cook, R. D. (1977). Detection of influential observation in linear regression. Technometrics, 19(1), 15–18. https://doi.org/10.1080/00401706.1977.10489493
  2. Cook, R. D., & Weisberg, S. (1982). Residuals and influence in regression. Chapman and Hall.
  3. Bollen, K. A., & Jackman, R. W. (1990). Regression diagnostics: An expository treatment of outliers and influential cases. W J. Fox & J. S. Long (Red.), Modern methods of data analysis (s. 257–291). Sage.
  4. Fox, J. (2016). Applied regression analysis and generalized linear models (3rd ed.). SAGE.
  5. Field, A., Miles, J., & Field, Z. (2012). Discovering statistics using R. SAGE.
  6. Hryniewicz, K., & Milewska, A. (2023). SZTOS: System Zautomatyzowanego Tworzenia Opisu Statystycznego [Oprogramowanie]. SZTOS IT. https://sztos-it.com/

Zobacz też

Przygotowujesz artykuł, doktorat lub grant?

Zaplanujemy i wykonamy analizy, przygotujemy raport z tabelami, wykresami i kodem R oraz pomożemy odpowiedzieć na uwagi recenzentów dotyczące statystyki.

Na skróty