Ætla að skoða áhrif fermetra íbúðar og staðsetningu (rvk/akureyri) á verð hennar. Geri fyrst líkan með engum samvirknihrifum. Sjáum að allt er bullandi marktækt.
lm(nuvirdi ~ ibm2 + borg, df) %>%
tidy %>%
kable(digits = 2, format = "html") %>%
kable_styling()
| term | estimate | std.error | statistic | p.value |
|---|---|---|---|---|
| (Intercept) | -5243.60 | 248.00 | -21.14 | 0 |
| ibm2 | 282.80 | 1.31 | 215.34 | 0 |
| borgReykjavík | 10234.99 | 216.50 | 47.28 | 0 |
Geri núna samvirknilíkan. Þá eru samvirknihrifin marktæk en meginhrifin ekki. Hmmmm.
lm(nuvirdi ~ ibm2 + borg + ibm2:borg, df) %>%
tidy %>%
kable(digits = 2, format = "html") %>%
kable_styling()
| term | estimate | std.error | statistic | p.value |
|---|---|---|---|---|
| (Intercept) | 3594.10 | 552.49 | 6.51 | 0.00 |
| ibm2 | 196.36 | 5.01 | 39.20 | 0.00 |
| borgReykjavík | 765.68 | 571.80 | 1.34 | 0.18 |
| ibm2:borgReykjavík | 92.75 | 5.19 | 17.88 | 0.00 |
Jaðarreglan segir að við eigum ekki að túlka meginhrifin Borg þegar við erum með samvirknihrifin Borg:ibm2. Það passar því við erum með mismunandi hallastuðla og því er munurinn milli hópa mismunandi eftir því hvað við erum að skoða stórar eignir (ibm2 á myndinni fyrir neðan).
Af því að meginhrifin eru ómarktæk gætum við knúist til að fjarlægja þau úr líkaninu, en jaðarreglan bannar okkur að gera það nema við fjarlægjum líka samvirknihrifin.
ggplot(df, aes(x = ibm2, y = nuvirdi, color = borg)) +
geom_smooth(method = "lm", se = F) +
geom_vline(xintercept = 0, lty = 2) +
labs(title = "Líkan með samvirknihrifum",
subtitle = "Munurinn er sama sem enginn þegar ibm2 = 0 (gerist aldrei en þúst)")
Samvirknilíkanið að ofan skoðar muninn milli hópa þegar ibm2 er 0. Ef við færum ibm2 með því að draga meðaltalið frá getum við fengið líkan með marktæk meginhrif milli hópa líka.
df %>%
mutate(ibm2 = ibm2 - mean(ibm2)) %>%
lm(nuvirdi ~ ibm2 + borg + ibm2:borg, data = .) %>%
tidy %>%
kable(digits = 2, format = "html") %>%
kable_styling()
| term | estimate | std.error | statistic | p.value |
|---|---|---|---|---|
| (Intercept) | 23293.44 | 207.57 | 112.22 | 0 |
| ibm2 | 196.36 | 5.01 | 39.20 | 0 |
| borgReykjavík | 10070.50 | 215.49 | 46.73 | 0 |
| ibm2:borgReykjavík | 92.75 | 5.19 | 17.88 | 0 |
Núna er ibm2 = 0 orðið að meðaltali ibm2. Við sjáum að í meðalstærð íbúða eru meginhrif í mun milli borganna. Dottóta línan sýnir hvar líkanið metur meginhrifin Borg.
df %>%
mutate(ibm2 = ibm2 - mean(ibm2)) %>%
ggplot(aes(x = ibm2, y = nuvirdi, color = borg)) +
geom_smooth(method = "lm", se = F) +
geom_vline(xintercept = 0, lty = 2) +
labs(title = "Líkan með samvirknihrifum",
subtitle = "Munurinn er sama sem enginn þegar ibm2 = 0 (gerist aldrei en þúst)")