Regressie naar het gemiddelde

Introductie tot regressie in R

Richie Cotton

Data Evangelist

Het concept

  • Responswaarde = voorspelde waarde + residu
  • "Wat je verklaarde" + "wat je niet kon verklaren"
  • Residuen komen door problemen in het model en fundamentele willekeur
  • Uitersten komen vaak door toeval
  • Regressie naar het gemiddelde betekent dat uitersten niet blijven bestaan in de tijd
Introductie tot regressie in R

Pearsons vader-zoon-gegevensset

  • 1078 vader/zoon-paren
  • Hebben lange vaders lange zonen?
lengte_vader_cm lengte_zoon_cm
165,2 151,8
160,7 160,6
165,0 160,9
167,0 159,5
155,3 163,3
... ...
1 Adapted from https://www.rdocumentation.org/packages/UsingR/topics/father.son
Introductie tot regressie in R

Spreidingsdiagram

plt_son_vs_father <- ggplot(
  father_son, 
  aes(father_height_cm, son_height_cm)
) +
  geom_point() +
  geom_abline(color = "green", size = 1) +
  coord_fixed()

Een spreidingsdiagram van lengtes van zonen tegenover die van vaders, met een lijn waar vader en zoon even lang zouden zijn. Als vaders langer zijn, zijn zonen dat ook.

Introductie tot regressie in R

Een regressielijn toevoegen

plt_son_vs_father +
  geom_smooth(method = "lm", se = FALSE)

Het spreidingsdiagram van lengtes van zonen tegenover vaders, met een lineaire trendlijn. De trendlijn is minder steil dan de lijn waar vader en zoon even lang zijn.

Introductie tot regressie in R

Een regressie uitvoeren

mdl_son_vs_father <- lm(
  son_height_cm ~ father_height_cm, 
  data = father_son
)
Call:
lm(formula = son_height_cm ~ father_height_cm, data = father_son)

Coefficients:
     (Intercept)  father_height_cm  
          86.072             0.514
Introductie tot regressie in R

Voorspellingen maken

really_tall_father <- tibble(
  father_height_cm = 190
)
predict(mdl_son_vs_father, really_tall_father)
183.7
really_short_father <- tibble(
  father_height_cm = 150
)
predict(mdl_son_vs_father, really_short_father)
163.2
Introductie tot regressie in R

Laten we oefenen!

Introductie tot regressie in R

Preparing Video For Download...