Oferty statystyczne Tutoriale Opinie Kontakt

Regresja liniowa – wzór i przykład krok po kroku

Regresja liniowa prosta opisuje związek dwóch zmiennych ilościowych za pomocą prostej \(\hat{y} = a + bx\) i pozwala przewidywać jedną zmienną na podstawie drugiej. Typowe pytanie z pracy dyplomowej: o ile punktów średnio rośnie wynik z kolokwium z każdą dodatkową godziną nauki?

W prostych słowachSzukasz prostej, która przechodzi jak najbliżej wszystkich punktów na wykresie. Jej nachylenie mówi, o ile średnio zmienia się wynik, gdy druga zmienna rośnie o jeden. Pionowe odległości punktów od prostej to błędy przewidywania, czyli reszty. Najlepsza prosta to ta, dla której suma kwadratów reszt jest najmniejsza.

Kiedy stosować regresję liniową?

  • chcesz przewidywać zmienną ilościową (zmienną zależną y, np. punkty) na podstawie innej zmiennej (predyktora x, np. godzin nauki);
  • związek jest w przybliżeniu liniowy – sprawdź to na wykresie rozrzutu;
  • obserwacje są niezależne – każda osoba występuje w danych raz;
  • reszty mają podobny rozrzut w całym zakresie x i rozkład zbliżony do normalnego. Założenia dotyczą reszt, a nie samych zmiennych x i y.

Gdy chcesz tylko opisać siłę związku, wystarczy korelacja Pearsona. Gdy zmienna zależna ma dwie kategorie (zdał/nie zdał), potrzebujesz regresji logistycznej. Przy kilku predyktorach mówimy o regresji wielokrotnej, \(\hat{y} = a + b_1x_1 + b_2x_2 + \dots\) – każde b opisuje wtedy zmianę y przy stałych pozostałych predyktorach, a ich wzajemne powiązanie sprawdzasz współczynnikiem VIF.

Wzór na regresję liniową

$$ \hat{y} = a + b\,x \qquad b = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sum (x_i - \bar{x})^2} \qquad a = \bar{y} - b\,\bar{x} $$ $$ R^2 = 1 - \frac{\sum (y_i - \hat{y}_i)^2}{\sum (y_i - \bar{y})^2} \qquad t = \frac{b}{SE_b},\quad SE_b = \sqrt{\frac{\sum (y_i - \hat{y}_i)^2 / (n-2)}{\sum (x_i - \bar{x})^2}},\quad df = n - 2 $$
\(\hat{y}\)
wynik przewidywany przez prostą (czytaj: „y z daszkiem”)
\(x_i,\ y_i\)
wyniki i-tej osoby: predyktor (godziny) i zmienna zależna (punkty)
\(\bar{x},\ \bar{y}\)
średnie obu zmiennych
\(b\)
współczynnik nachylenia: o ile średnio zmienia się y, gdy x rośnie o 1
\(a\)
wyraz wolny (stała): przewidywany wynik dla x = 0
\(y_i - \hat{y}_i\)
reszta, czyli błąd przewidywania dla i-tej osoby
\(R^2\)
współczynnik determinacji: jaka część zmienności y jest wyjaśniona przez prostą
\(t,\ SE_b,\ df\)
statystyka testu istotności b, błąd standardowy b i stopnie swobody

Przykład krok po kroku

Te same dane co w haśle o korelacji Pearsona: pięcioro studentów zapisało, ile godzin uczyło się do kolokwium (x) i ile punktów zdobyło (y).

Tabela 1. Dane i obliczenia pomocnicze
xyx − 3y − 6(x − 3)(y − 6)(x − 3)²ŷreszta y − ŷreszta²
14−2−2442,81,21,44
22−1−4414,4−2,45,76
3802006,02,04,00
4610017,6−1,62,56
51024849,20,80,64
Σ = 15Σ = 3000161030014,4
  1. Średnie. \(\bar{x} = 15/5 = 3\), \(\bar{y} = 30/5 = 6\).
  2. Nachylenie. b = 16 / 10 = 1,6.
  3. Wyraz wolny. a = 6 − 1,6 · 3 = 1,2. Równanie prostej: ŷ = 1,2 + 1,6x.
  4. Reszty. Dla x = 1: ŷ = 1,2 + 1,6 = 2,8, a reszta 4 − 2,8 = 1,2. Reszty zawsze sumują się do zera.
  5. R². Bez modelu suma kwadratów odchyleń od średniej wynosi Σ(y − 6)² = 4 + 16 + 4 + 0 + 16 = 40. Z prostą zostaje 14,4. R² = 1 − 14,4 / 40 = 0,64.
  6. Istotność b. \(SE_b = \sqrt{(14{,}4/3)/10} = \sqrt{0{,}48} = 0{,}693\); t = 1,6 / 0,693 = 2,31; df = 3; p = 0,104 – wynik nieistotny przy α = 0,05.
Dwa panele z tymi samymi pięcioma punktami: po lewej odchylenia od średniej 6 o sumie kwadratów 40, po prawej reszty od prostej y = 1,2 + 1,6x o sumie kwadratów 14,4
Rys. 1. Skąd się bierze R²? Po lewej przewidujemy każdemu średnią (6 punktów) i mylimy się o −2, −4, +2, 0 i +4 (suma kwadratów 40). Po prawej przewidujemy z prostej i błędy maleją (suma kwadratów 14,4). Prosta zmniejszyła sumę kwadratów błędów o 64%, stąd R² = 0,64.
Wykres z aplikacji SZTOS: punkty godzin nauki i punktów wyśrodkowane wokół średnich, przerywana linia regresji o nachyleniu 1,6, szeroki pas przedziału ufności, R kwadrat 0,64
Rys. 2. Wykres z modułu regresji aplikacji SZTOS dla tych samych danych. Osie pokazują odchylenia od średnich (godziny − 3, punkty − 6), dlatego prosta przechodzi przez punkt (0, 0) – prosta regresji zawsze przechodzi przez punkt średnich. Linia przerywana oznacza predyktor nieistotny, a szeroki czerwony pas – dużą niepewność przy pięciu osobach.
Prosta regresji z trójkątem nachylenia: plus 1 godzina daje plus 1,6 punktu; wyraz wolny 1,2 zaznaczony przy zerze godzin w szarym obszarze poza zakresem danych
Rys. 3. Jak czytać współczynniki? Trójkąt pokazuje b: jedna godzina więcej to średnio 1,6 punktu więcej. Wyraz wolny a = 1,2 leży w szarym polu, czyli poza zakresem danych – nikt nie uczył się 0 godzin, więc tej wartości nie interpretujemy.

Jak zinterpretować i opisać wynik?

Każda dodatkowa godzina nauki wiąże się ze średnio o 1,6 punktu wyższym wynikiem, a model wyjaśnia 64% zmienności punktów. Współczynnik standaryzowany β = 0,80 jest w regresji prostej równy r Pearsona. To opis związku, a nie dowód przyczyny. 95% przedział ufności dla b (od −0,60 do 3,80) obejmuje zero, więc przy pięciu osobach nie możemy wykluczyć braku związku w populacji.

Zapis w stylu APA: Liczba godzin nauki wyjaśniała 64% zmienności punktów z kolokwium, R² = 0,64; F(1, 3) = 5,33; p = 0,104. Każda dodatkowa godzina wiązała się ze średnio o 1,6 punktu wyższym wynikiem, b = 1,60; 95% CI [−0,60; 3,80]; t(3) = 2,31; p = 0,104, jednak przy tak małej próbie efekt nie był istotny statystycznie.

Jak policzyć regresję liniową w R?

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

# 1) „ręcznie”, według wzorów metody najmniejszych kwadratów
b <- sum((godziny - mean(godziny)) * (punkty - mean(punkty))) /
     sum((godziny - mean(godziny))^2)
a <- mean(punkty) - b * mean(godziny)
reszty <- punkty - (a + b * godziny)
c(a = a, b = b, R2 = 1 - sum(reszty^2) / sum((punkty - mean(punkty))^2))

# 2) gotową funkcją
model <- lm(punkty ~ godziny)
summary(model)
confint(model)          # 95% przedziały ufności dla a i b

Wynik w konsoli R:

   a    b   R2 
1.20 1.60 0.64 

Call:
lm(formula = punkty ~ godziny)

Residuals:
   1    2    3    4    5 
 1.2 -2.4  2.0 -1.6  0.8 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept)   1.2000     2.2978   0.522    0.638
godziny       1.6000     0.6928   2.309    0.104

Residual standard error: 2.191 on 3 degrees of freedom
Multiple R-squared:   0.64,	Adjusted R-squared:   0.52 
F-statistic: 5.333 on 1 and 3 DF,  p-value: 0.1041

                 2.5 %   97.5 %
(Intercept) -6.1127049 8.512705
godziny     -0.6048635 3.804863

W tabeli Coefficients wiersz godziny to b, a (Intercept) to a. Wartość p dla b (0,104) jest taka sama jak p testu F całego modelu i jak p korelacji Pearsona – przy jednym predyktorze to ten sam test.

Jak sprawdzić założenia regresji liniowej?

Założenia sprawdzasz na resztach, czyli po dopasowaniu modelu. Na wykresie reszt względem wartości przewidywanych punkty nie powinny układać się w łuk ani w lejek. Wykres kwantyl-kwantyl reszt pokaże, czy ich rozkład jest zbliżony do normalnego. Na koniec poszukaj obserwacji wpływowych: dużych reszt standaryzowanych, wysokiej dźwigni i dużej odległości Cooka. Testowanie normalności samego y przed analizą jest zbędne.

Najczęstsze błędy

  • Interpretowanie wyrazu wolnego, gdy x = 0 leży poza zakresem danych.
  • Język przyczynowy („nauka zwiększa wynik o 1,6 punktu”) przy danych z badania korelacyjnego.
  • Sprawdzanie normalności zmiennych x i y zamiast reszt modelu.
  • Przewidywanie daleko poza zakresem danych, np. wyniku dla 20 godzin nauki.
  • Podawanie samego R² bez współczynnika b, jego przedziału ufności i wartości p.

Bibliografia

  1. Galton, F. (1886). Regression towards mediocrity in hereditary stature. The Journal of the Anthropological Institute of Great Britain and Ireland, 15, 246–263.
  2. Montgomery, D. C., Peck, E. A., & Vining, G. G. (2012). Introduction to linear regression analysis (5th ed.). Wiley.
  3. Fox, J., & Weisberg, S. (2019). An R companion to applied regression (3rd ed.). SAGE.
  4. King, B. M., & Minium, E. W. (2009). Statystyka dla psychologów i pedagogów. Wydawnictwo Naukowe PWN.
  5. Hryniewicz, K., & Milewska, A. (2023). SZTOS: System Zautomatyzowanego Tworzenia Opisu Statystycznego [Oprogramowanie]. SZTOS IT. https://sztos-it.com/

Zobacz też

Potrzebujesz pomocy z analizą do pracy dyplomowej?

Policzymy Twoje wyniki, przygotujemy tabele, wykresy i opis w standardzie APA, który wykorzystasz w swojej pracy. Pomagamy jak statystyk i redaktor – autorem pracy zostajesz Ty. Konsultacja i wycena są bezpłatne.

Na skróty