Hei,

põhjus, miks paneelandmeid kasutada tahad, on siin. Kujuta ette, sul on kaks kuulitõukajat: igavesti pirkas Jaan, kes samas pole eriti trenni teinud, ja kleenuke Jaanika, kes jälle mõned kuud treeninud.

Jaan tõukab täna (peale kahte nädalat trenni) 10 meetrit ja kuu aja pärast peale 6 nädalat trenni 12 meetrit. Jaanika tõukab täna peale 20 nädalat trenni 7 meetrit ja kuu aja pärast peale 24 nädalat trenni 8 meetrit. Nagu siin graafikul:

heitjad <- data.frame(tulemus=c(10,12,7,8), trennitehtud=c(2, 6, 20,24), heitja=c("Jaan", "Jaan", "Jaanika", "Jaanika"))

ggplot(heitjad,aes(x=trennitehtud, y=tulemus, color=heitja))+
  geom_point(size=3, shape=21, fill="white")+
  theme_minimal()

Kui sa nüüd üritaksid leida neist andmetest regressiooniga trennitegemise seost, tulemusega, saaksid sellise tulemuse:

summary(lm(tulemus ~ trennitehtud, data=heitjad))
## 
## Call:
## lm(formula = tulemus ~ trennitehtud, data = heitjad)
## 
## Residuals:
##       1       2       3       4 
## -1.0941  1.5765 -1.0765  0.5941 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)  
## (Intercept)   11.4294     1.3929   8.206   0.0145 *
## trennitehtud  -0.1676     0.0874  -1.918   0.1951  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.612 on 2 degrees of freedom
## Multiple R-squared:  0.6479, Adjusted R-squared:  0.4718 
## F-statistic:  3.68 on 1 and 2 DF,  p-value: 0.1951

Punkthinnangu järgi vähendab nädal aega trenni tegemist tulemust 0.16 meetri võrra… graafiliselt siis see sinine joon siin graafikul:

ggplot(heitjad,aes(x=trennitehtud, y=tulemus))+
  geom_point(size=3, shape=21, fill="white",aes(color=heitja))+
  geom_smooth(method="lm")+
  theme_minimal()

Regressioonijoon allapoole suunatud, ehk trenn nagu mõjuks halvasti, ometi on ent ju mõlemal heitjal tulemus trenni tegemisel paranenud!

ggplot(heitjad,aes(x=trennitehtud, y=tulemus))+
  geom_point(size=3, shape=21, fill="white",aes(color=heitja))+
  geom_smooth(method="lm", aes(color=heitja))+
  theme_minimal()
## Warning in qt((1 - level)/2, df): NaNs produced

## Warning in qt((1 - level)/2, df): NaNs produced

Paneelmudel võtabki seda arvesse, et nende inimeste tase on olnud erinev alustades, põhimõtteliselt leiab, mis on keskmine paranemine ühe nädala trenni korral:

summary(lm(tulemus ~trennitehtud + heitja, data=heitjad))
## 
## Call:
## lm(formula = tulemus ~ trennitehtud + heitja, data = heitjad)
## 
## Residuals:
##     1     2     3     4 
## -0.25  0.25  0.25 -0.25 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)  
## (Intercept)     9.5000     0.6124  15.513    0.041 *
## trennitehtud    0.3750     0.1250   3.000    0.205  
## heitjaJaanika -10.2500     2.3049  -4.447    0.141  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5 on 1 degrees of freedom
## Multiple R-squared:  0.9831, Adjusted R-squared:  0.9492 
## F-statistic:    29 on 2 and 1 DF,  p-value: 0.1302

See oli nüüd lihtsamat liiki nn fixed-effect mudel. Siit on näha, et keskmiselt paraneb tulemus 0.375 meetri võrra. (statistiliselt kõik ebaoluline jne, sest meil andmeid siin nii vähe, ärme seda praegu vaata).