Regression & Null Model

Estimate null model

library(lme4)

m0 <- lmer(MATH ~ 1 + (1 | CNTSCHID), data = pisa)

Null model result

summary(m0)
Linear mixed model fit by REML ['lmerMod']
Formula: MATH ~ 1 + (1 | CNTSCHID)
   Data: pisa

REML criterion at convergence: 13681.5

Scaled residuals: 
    Min      1Q  Median      3Q     Max 
-2.8568 -0.6436 -0.0624  0.6143  4.5990 

Random effects:
 Groups   Name        Variance Std.Dev.
 CNTSCHID (Intercept) 2333     48.30   
 Residual             2012     44.86   
Number of obs: 1297, groups:  CNTSCHID, 41

Fixed effects:
            Estimate Std. Error t value
(Intercept)  363.631      7.737      47

Find ICC

library(sjPlot)

tab_model(m0)
  MATH
Predictors Estimates CI p
(Intercept) 363.63 348.45 – 378.81 <0.001
Random Effects
σ2 2012.22
τ00 CNTSCHID 2332.65
ICC 0.54
N CNTSCHID 41
Observations 1297
Marginal R2 / Conditional R2 0.000 / 0.537

Understanding ICC with Plot

pisa$m0 <- predict(m0)

Null model plot

pisa %>% 
  ggplot(aes(ESCS, m0, color = CNTSCHID, group = CNTSCHID)) + 
  geom_smooth(se = F, method = lm) +
  theme_bw() +
  theme(axis.text.x = element_blank(),
        axis.ticks = element_blank()) +
  labs(x = "", y = "MAtematika", color = "CNTSCHID")

Plotting with qqmath

library(lattice)
qqmath(ranef(m0, condVar = TRUE))
$CNTSCHID