19  Mehrebenenmodelle

19.1 Folien

Folien als Vollbild | Folien als PDF

19.2 Daten zur heutigen Sitzung

19.3 Code und Ausgaben aus der Vorlesung

R Skript herunterladen

Laden der relevanten Pakete

library(lme4) # Mehrebenenmodelle
Loading required package: Matrix
library(lmerTest) # Signifikanztests für Mehrebenenmodelle

Attaching package: 'lmerTest'
The following object is masked from 'package:lme4':

    lmer
The following object is masked from 'package:stats':

    step
library(marginaleffects) # Modellvorhersagen und Vergleiche

Attaching package: 'marginaleffects'
The following object is masked from 'package:lme4':

    refit
library(performance) # Modellbeurteilung (hier vor allem ICC)
library(parameters) # Modellschätzungen extrahieren und darstellen
library(report) # Einfaches Erstellen von statistischen Berichten
library(tidyverse) # Datenmanagement und Visualisierung: https://www.tidyverse.org/
── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
✔ dplyr     1.2.0     ✔ readr     2.1.6
✔ forcats   1.0.1     ✔ stringr   1.6.0
✔ ggplot2   4.0.2     ✔ tibble    3.3.1
✔ lubridate 1.9.4     ✔ tidyr     1.3.2
✔ purrr     1.2.1     
── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
✖ tidyr::expand() masks Matrix::expand()
✖ dplyr::filter() masks stats::filter()
✖ dplyr::lag()    masks stats::lag()
✖ tidyr::pack()   masks Matrix::pack()
✖ tidyr::unpack() masks Matrix::unpack()
ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
theme_set(theme_classic()) # Voreinstellung für Plots

Daten laden

d <- read_rds(here::here("data/Faehnrich_2020.rds"))

Struktur der Stichprobe

d |>
  summarise(n_posts = n(), .by = uni)
# A tibble: 42 × 2
   uni                     n_posts
   <fct>                     <int>
 1 Columbia U                  576
 2 Cornell U                   404
 3 Duke U                      323
 4 Harvard U                   203
 5 Imperial College London     179
 6 Johns Hopkins U             481
 7 MIT                         243
 8 New York U                  407
 9 Northwestern U              141
10 Princeton U                 507
# ℹ 32 more rows

Stichprobe: Unabhängige Variablen (L1)

sample_l1 <- d |>
  select(timeofday, type, year, starts_with("topic"), word_count, day_type) |>
  report_sample()
sample_l1 |>
  _[1:12, ]
# Descriptive Statistics

Variable                 | Summary
----------------------------------
timeofday [morning], %   |    38.3
timeofday [afternoon], % |    46.1
timeofday [evening], %   |    14.2
timeofday [night], %     |     1.4
type [status], %         |     5.4
type [link], %           |    37.4
type [photo], %          |    48.9
type [video], %          |     8.3
year [2015], %           |    26.9
year [2012], %           |     7.6
year [2013], %           |    32.8
year [2014], %           |    32.6

Stichprobe: Unabhängige Variablen (L1) - Fortsetzung

sample_l1 |>
  _[13:nrow(sample_l1), ]
# Descriptive Statistics

Variable                |       Summary
---------------------------------------
topic_research [yes], % |          28.0
topic_teaching [yes], % |          25.6
topic_awards [yes], %   |           5.7
topic_event [yes], %    |          35.1
topic_interact [yes], % |          37.2
topic_self [yes], %     |          16.8
Mean word_count (SD)    | 30.81 (24.71)
day_type [weekend], %   |          13.8

Stichprobe: Abhängige Variablen (L1)

d |>
  select(likes_count, comments_count, shares_count) |>
  report_table()
Variable       | n_Obs |   Mean |      SD | Median |    MAD | Min |    Max
--------------------------------------------------------------------------
likes_count    | 10391 | 425.22 | 1153.04 |    108 | 130.47 |   0 |  24847
comments_count | 10391 |  12.18 |   36.54 |      3 |   4.45 |   0 |   1556
shares_count   | 10391 |  62.60 | 1441.28 |      9 |  11.86 |   0 | 145480

Variable       | Skewness | Kurtosis | percentage_Missing
---------------------------------------------------------
likes_count    |     9.10 |   129.01 |                  0
comments_count |    15.73 |   456.79 |                  0
shares_count   |    98.92 |  9976.61 |                  0

Stichprobe: Unabhängige Variablen (L2)

d |>
  distinct(uni, uni_fans, uni_us) |>
  select(-uni) |>
  report_sample()
# Descriptive Statistics

Variable           |               Summary
------------------------------------------
Mean uni_fans (SD) | 435063.17 (758868.02)
uni_us [US], %     |                  85.7

Stichprobe: log-Transformation - Code

# d <- d |>
#   mutate(
#     word_count_log = log1p(word_count),
#     uni_fans_log = log(uni_fans),
#     likes_count_log = log1p(likes_count),
#     comments_count_log = log1p(comments_count),
#     shares_count_log = log1p(shares_count)
#   )

Stichprobe: log-Transformation - Grafik

d |>
  select(id, uni_fans, ends_with("count"), ends_with("log")) |>
  gather(key, value, -id) |>
  mutate(
    type = if_else(str_detect(key, "log"), "log", "original"),
    key = str_remove_all(key, "_log")
  ) |>
  spread(type, value) |>
  ggplot(aes(original, log)) +
  geom_point() +
  facet_wrap(vars(key), scales = "free") +
  scale_x_continuous(labels = scales::label_comma())

Stichprobe: Datensatz

d |>
  select(comments_count_log, topic_research, uni, uni_fans_log) |>
  slice_head(n = 4, by = uni) |>
  _[1:10, ]
# A tibble: 10 × 4
   comments_count_log topic_research uni        uni_fans_log
                <dbl> <fct>          <fct>             <dbl>
 1              0     no             Columbia U         12.4
 2              0.693 no             Columbia U         12.4
 3              0.693 no             Columbia U         12.4
 4              2.77  no             Columbia U         12.4
 5              0     no             Cornell U          12.5
 6              4.03  no             Cornell U          12.5
 7              0.693 yes            Cornell U          12.5
 8              1.61  no             Cornell U          12.5
 9              1.61  no             Duke U             12.6
10              0     no             Duke U             12.6

Null-Modell schaetzen

m0 <- lmer( # Funktion für lineares Mehrebenenmodell
  comments_count_log ~ # abhängige Variable
    1 + # Gewichteter Gesamtmittelwert
    (1 | uni), # Struktur des Modells
  data = d
) # Daten

Null-Modell Tabelle

m0 |>
  report_table(metrics = "R2", include_effectsize = FALSE)
Parameter        | Coefficient |       95% CI | t(10388) |      p | Effects
---------------------------------------------------------------------------
(Intercept)      |        1.72 | [1.47, 1.96] |    13.73 | < .001 |   fixed
                 |        0.81 |              |          |        |  random
                 |        1.01 |              |          |        |  random
                 |             |              |          |        |        
R2 (conditional) |             |              |          |        |        
R2 (marginal)    |             |              |          |        |        

Parameter        |    Group |  Fit
----------------------------------
(Intercept)      |          |     
                 |      uni |     
                 | Residual |     
                 |          |     
R2 (conditional) |          | 0.39
R2 (marginal)    |          | 0.00

Null-Modell Vorhersage

plot_predictions(m0, condition = "uni") +
  coord_flip() +
  scale_x_discrete(limits = rev)
Warning: For this model type, `marginaleffects` only takes into account the
uncertainty in fixed-effect parameters. This is often appropriate when
`re.form=NA`, but may be surprising to users who set `re.form=NULL` (default)
or to some other value. Call `options(marginaleffects_safe = FALSE)` to silence
this warning.
Warning: For this model type, `marginaleffects` only takes into account the
uncertainty in fixed-effect parameters. This is often appropriate when
`re.form=NA`, but may be surprising to users who set `re.form=NULL` (default)
or to some other value. Call `options(marginaleffects_safe = FALSE)` to silence
this warning.

ICC

icc(m0, by_group = TRUE)
# ICC by Group

Group |   ICC
-------------
uni   | 0.390

Random-Intercept-Modell mit L1-Praediktoren schaetzen

m1 <- lmer( # Funktion für lineares Mehrebenenmodell
  comments_count_log ~ # abhängige Variable
    topic_interact + topic_research + topic_teaching + # Prädiktoren
    (1 | uni), # Struktur des Modells
  data = d
)

Random-Intercept-Modell mit L1-Praediktoren Tabelle

m1 |>
  report_table(metrics = "R2", include_effectsize = FALSE)
Parameter            | Coefficient |         95% CI | t(10385) |      p
-----------------------------------------------------------------------
(Intercept)          |        1.77 | [ 1.52,  2.01] |    14.13 | < .001
topic interact [yes] |        0.08 | [ 0.04,  0.12] |     3.98 | < .001
topic research [yes] |       -0.20 | [-0.24, -0.15] |    -8.68 | < .001
topic teaching [yes] |       -0.09 | [-0.13, -0.04] |    -3.76 | < .001
                     |        0.80 |                |          |       
                     |        1.00 |                |          |       
                     |             |                |          |       
R2 (conditional)     |             |                |          |       
R2 (marginal)        |             |                |          |       

Parameter            | Effects |    Group |      Fit
----------------------------------------------------
(Intercept)          |   fixed |          |         
topic interact [yes] |   fixed |          |         
topic research [yes] |   fixed |          |         
topic teaching [yes] |   fixed |          |         
                     |  random |      uni |         
                     |  random | Residual |         
                     |         |          |         
R2 (conditional)     |         |          |     0.39
R2 (marginal)        |         |          | 6.78e-03

Random-Intercept-Modell mit L1-Praediktoren Plot

m1 |>
  parameters(effects = "fixed") |>
  plot()

Random-Intercept-Modell mit L2-Praediktoren schaetzen

m2 <- lmer(comments_count_log ~ topic_interact + topic_research +
  topic_teaching + uni_fans_log + (1 | uni), data = d)

Random-Intercept-Modell mit L2-Praediktoren Tabelle

m2 |>
  report_table(metrics = "R2", include_effectsize = FALSE)
Parameter            | Coefficient |         95% CI | t(10384) |      p
-----------------------------------------------------------------------
(Intercept)          |       -4.88 | [-6.32, -3.44] |    -6.65 | < .001
topic interact [yes] |        0.09 | [ 0.04,  0.13] |     4.07 | < .001
topic research [yes] |       -0.20 | [-0.24, -0.15] |    -8.67 | < .001
topic teaching [yes] |       -0.09 | [-0.13, -0.04] |    -3.77 | < .001
uni fans log         |        0.54 | [ 0.43,  0.66] |     9.10 | < .001
                     |        0.46 |                |          |       
                     |        1.00 |                |          |       
                     |             |                |          |       
R2 (conditional)     |             |                |          |       
R2 (marginal)        |             |                |          |       

Parameter            | Effects |    Group |  Fit
------------------------------------------------
(Intercept)          |   fixed |          |     
topic interact [yes] |   fixed |          |     
topic research [yes] |   fixed |          |     
topic teaching [yes] |   fixed |          |     
uni fans log         |   fixed |          |     
                     |  random |      uni |     
                     |  random | Residual |     
                     |         |          |     
R2 (conditional)     |         |          | 0.38
R2 (marginal)        |         |          | 0.25

Random-Intercept-Modell mit L2-Praediktoren Plot

m2 |>
  parameters(effects = "fixed") |>
  plot()

Random-Slope-Modell schaetzen

m3 <- lmer(
  comments_count_log ~ topic_interact + topic_research +
    topic_teaching + uni_fans_log +
    (topic_research | uni), # Koeffizient von topic_research darf zwischen Uni-Seiten variieren
  data = d
)

Random-Slope-Modell Modellvergleich

anova(m2, m3, model.names = c("Random Intercept", "Random Slope")) |>
  rownames_to_column(var = "Modell")
refitting model(s) with ML (instead of REML)
Data: d
Models:
Random Intercept: comments_count_log ~ topic_interact + topic_research + topic_teaching + uni_fans_log + (1 | uni)
Random Slope: comments_count_log ~ topic_interact + topic_research + topic_teaching + uni_fans_log + (topic_research | uni)
     Modell npar   AIC   BIC logLik -2*log(L) Chisq Df Pr(>Chisq)    
[1,]      1    7 29745 29796 -14865     29731                        
[2,]      2    9 29729 29794 -14856     29711 19.77  2  5.095e-05 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Random-Slope-Modell Tabelle der Fixed Effects

m3 |>
  report_table(metrics = "R2", include_effectsize = FALSE) |>
  filter(Effects == "fixed") |>
  select(-Effects, -Group, -Fit)
Parameter            | Coefficient |         95% CI | t(10382) |      p
-----------------------------------------------------------------------
(Intercept)          |       -4.87 | [-6.29, -3.44] |    -6.68 | < .001
topic interact [yes] |        0.09 | [ 0.04,  0.13] |     4.06 | < .001
topic research [yes] |       -0.20 | [-0.27, -0.13] |    -5.40 | < .001
topic teaching [yes] |       -0.08 | [-0.13, -0.04] |    -3.61 | < .001
uni fans log         |        0.54 | [ 0.43,  0.66] |     9.15 | < .001

Random-Slope-Modell Tabelle der Random Effects

m3 |>
  parameters(effects = "random", ci_random = FALSE, group_level = FALSE)
# Random Effects

Parameter                              | Coefficient | 95% CI
-------------------------------------------------------------
SD (Intercept: uni)                    |        0.46 |       
SD (topic_researchyes: uni)            |        0.18 |       
Cor (Intercept~topic_researchyes: uni) |       -0.17 |       
SD (Residual)                          |        1.00 |       

Random-Slope-Modell Plot der Random Effects

m3 |>
  plot_slopes(variables = "topic_research", condition = "uni") +
  coord_flip() +
  scale_x_discrete(limits = rev) +
  geom_hline(yintercept = 0, linetype = 2)
Warning: For this model type, `marginaleffects` only takes into account the
uncertainty in fixed-effect parameters. This is often appropriate when
`re.form=NA`, but may be surprising to users who set `re.form=NULL` (default)
or to some other value. Call `options(marginaleffects_safe = FALSE)` to silence
this warning.
Warning: For this model type, `marginaleffects` only takes into account the
uncertainty in fixed-effect parameters. This is often appropriate when
`re.form=NA`, but may be surprising to users who set `re.form=NULL` (default)
or to some other value. Call `options(marginaleffects_safe = FALSE)` to silence
this warning.
Warning: For this model type, `marginaleffects` only takes into account the
uncertainty in fixed-effect parameters. This is often appropriate when
`re.form=NA`, but may be surprising to users who set `re.form=NULL` (default)
or to some other value. Call `options(marginaleffects_safe = FALSE)` to silence
this warning.

Random-Slope-Modell mit Cross-Level-Interaktion schaetzen

m4 <- lmer(comments_count_log ~ topic_interact +
  topic_research * uni_fans_log + # Cross-Level-Interaktion
  topic_teaching + (topic_research | uni), data = d)

Random-Slope-Modell mit Cross-Level-Interaktion Tabelle der Fixed Effects

m4 |>
  report_table(metrics = "R2", include_effectsize = FALSE) |>
  filter(Effects == "fixed") |>
  select(-Effects, -Group, -Fit)
Parameter                           | Coefficient |         95% CI | t(10381) |      p
--------------------------------------------------------------------------------------
(Intercept)                         |       -5.11 | [-6.57, -3.65] |    -6.88 | < .001
topic interact [yes]                |        0.09 | [ 0.04,  0.13] |     4.06 | < .001
topic research [yes]                |        0.38 | [-0.31,  1.08] |     1.08 | 0.282 
uni fans log                        |        0.56 | [ 0.44,  0.68] |     9.29 | < .001
topic teaching [yes]                |       -0.08 | [-0.13, -0.04] |    -3.60 | < .001
topic research [yes] × uni fans log |       -0.05 | [-0.10,  0.01] |    -1.64 | 0.100 

Random-Slope-Modell mit Cross-Level-Interaktion Plot der Interaktion

plot_slopes(m4, variables = "topic_research", condition = "uni_fans_log") +
  geom_hline(yintercept = 0, linetype = 2)
Warning: For this model type, `marginaleffects` only takes into account the
uncertainty in fixed-effect parameters. This is often appropriate when
`re.form=NA`, but may be surprising to users who set `re.form=NULL` (default)
or to some other value. Call `options(marginaleffects_safe = FALSE)` to silence
this warning.
Warning: For this model type, `marginaleffects` only takes into account the
uncertainty in fixed-effect parameters. This is often appropriate when
`re.form=NA`, but may be surprising to users who set `re.form=NULL` (default)
or to some other value. Call `options(marginaleffects_safe = FALSE)` to silence
this warning.
Warning: For this model type, `marginaleffects` only takes into account the
uncertainty in fixed-effect parameters. This is often appropriate when
`re.form=NA`, but may be surprising to users who set `re.form=NULL` (default)
or to some other value. Call `options(marginaleffects_safe = FALSE)` to silence
this warning.

19.4 Hausaufgabe

  1. Reproduzieren Sie die Mehrebenenmodelle aus der Vorlesung. Interpretieren Sie die Ergebnisse.
  2. Schätzen Sie die umfangreicheren Modelle im Übungsskript. Passen Sie die Modelle nach Ihren Interessen an. Interpretieren Sie die Ergebnisse.

Lösung

19.5 Transkript

Das folgende Transkript wurde auf Basis der Aufzeichnung der Vorlesung erstellt. Die vollständigen Aufzeichnungen inklusive der Bildschirminhalte sind in Blackboard🔒 verfügbar. Die Tonspur wurde zuerst mit Hilfe der Werkzeuge des Oral-History.Digital Projekts wörtlich transkribiert. Die wörtliche Transkription wurde in Kombination mit den Vorlesungsfolien mithilfe von Sprachmodellen (v. a. Claude Sonnet 4.5 und GPT 5.2) zu einem übersichtlichen Transkript zusammengefasst. Im Anschluss wurde das Transkript von einer studentischen Hilfskraft überprüft, geglättet und ggf. angepasst. In diesem Prozess kann es an verschiedenen Stellen zu Fehlern kommen. Im Zweifel gilt das gesprochene Wort, und auch beim Vortrag mache ich Fehler.

Ich stelle das Transkript hier als experimentelles, ergänzendes Material zur Dokumentation der Vorlesung zur Verfügung. Noch bin ich mir unsicher, ob es eine sinnvolle Ergänzung ist und behalte mir vor, es weiter zu bearbeiten oder zu löschen.

Teil 1

Einführung und Grundidee

Mehrebenenmodelle werden gebraucht, wenn Daten geschachtelt sind – wenn also einzelne Beobachtungen zu übergeordneten Einheiten gehören. Typische hierarchische Strukturen sind z. B. Schülerinnen in Klassen, Kommentare in Posts oder Posts in Accounts.

Daneben gibt es auch nicht-hierarchische (überkreuzte) Strukturen, etwa wenn Messungen gleichzeitig zu Personen und Stimuli gehören oder Zeitungsartikel gleichzeitig zu Zeitungen und Jahren. Die Vorlesung und die Klausur beschränken sich jedoch bewusst auf den einfachen Fall von zwei hierarchischen Ebenen.

Mehrebenenmodelle bauen stark auf Konzepten der multiplen Regression sowie auf Interaktion und Moderation auf. Die Sitzung knüpft daher direkt an frühere Vorlesungen an.

Die zentrale Idee ist doppelt: Einerseits stellen geschachtelte Daten ein statistisches Problem dar (Verletzung der Unabhängigkeitsannahme), andererseits sind die Gruppenstrukturen selbst inhaltlich interessant und analysierbar.

  • Mehrebenendaten: L1-Einheiten sind in L2-Einheiten geschachtelt.
  • Typische Beispiele: Schülerinnen in Klassen, Posts in Accounts, Messungen in Personen.
  • Nicht-hierarchische Strukturen möglich (Personen × Stimuli; Zeitungen × Jahre).
  • Vorlesung behandelt nur den einfachen Fall mit zwei hierarchischen Ebenen.
  • Mehrebenenmodelle korrigieren statistische Probleme und machen Kontextstrukturen inhaltlich analysierbar.

Warum Mehrebenenmodelle notwendig sind

Klassische Regressionsmodelle setzen voraus, dass alle Beobachtungen unabhängig voneinander sind. Bei geschachtelten Daten ist diese Annahme verletzt, weil Fälle innerhalb derselben Gruppe einander ähnlicher sind als Fälle aus unterschiedlichen Gruppen.

Als Alternativen werden Fixed-Effects-Modelle und cluster-robuste Standardfehler erwähnt. Diese können statistische Probleme zwar teilweise korrigieren, machen die Gruppierungsstruktur aber nicht inhaltlich auswertbar. Genau darin liegt der entscheidende Vorteil von Mehrebenenmodellen.

Wird die Gruppierung ignoriert, entstehen zu kleine Standardfehler und damit erhöhte Alpha-Fehler-Wahrscheinlichkeiten.

Begriffe und Namen

Dasselbe Grundkonzept trägt viele Namen: Mixed Effects Model, Hierarchical Linear Model, Random Effects Model, Multi Level Model, Mixed Model, Variance Component Model und Nested Data Model. Auf Deutsch spricht man meist von Mehrebenenmodell oder Mehrebenenregression. Die Begriffsfülle kann verwirrend wirken – inhaltlich bezeichnen alle dieselbe Grundidee.

Zentrale Grundbegriffe:

  • Nullmodell: Modell ohne Prädiktoren; beschreibt nur die Varianzstruktur der Ebenen.
  • Between-Group-Varianz: Unterschiede zwischen L2-Einheiten.
  • Within-Group-Varianz: Unterschiede innerhalb derselben L2-Einheit.
  • Fixed Effects: Effekte, die über alle Kontexte hinweg gleich angenommen werden.
  • Random Effects / Varying Effects / Random Slopes: Effekte, die zwischen Gruppen variieren dürfen.
  • Cross-Level-Interaktion: Zusammenhang zwischen einem L1-Effekt und einem Merkmal auf L2.

Beispielstudie der Vorlesung

Die Vorlesung arbeitet mit der Studie von Fähnrich et al. (2020) zur strategischen Online-Kommunikation von Universitäten auf Facebook. Untersucht wird, wie erfolgreich bestimmte Post-Arten sind und wie stark sie Engagement auslösen.

Die Daten stammen von den Facebook-Seiten der Top-50-Universitäten des Shanghai-Rankings. Erhoben wurden alle Posts in einem Dreijahreszeitraum von Oktober 2012 bis September 2015 (insgesamt 72.044 Posts). Für die Vorlesung wird eine Teilstichprobe von ca. 10.000 Posts aus 42 Seiten verwendet, weshalb die publizierten Ergebnisse nicht exakt reproduziert werden können.

Die Daten sind hierarchisch aufgebaut: Jeder Post gehört genau zu einer Universität. Die Universitäten unterscheiden sich stark in ihrer Aktivität – manche Seiten haben weniger als 50 Posts im Datensatz, andere über 500. Mehrebenenmodelle können mit solchen ungleichen Gruppengrößen gut umgehen.

L1- und L2-Variablen

Level 1 (Post-Ebene)

Prädiktoren auf L1 sind Eigenschaften einzelner Posts: Tageszeit, Wochenende vs. Werktag, Wortzahl, Beitragstyp sowie Themenkategorien (Forschung, Lehre, Awards, Events, Interaktion, Selbstpräsentation). Die Themen schließen sich nicht gegenseitig aus; ein Post kann mehrere Themen gleichzeitig haben.

Die abhängige Variable liegt ebenfalls auf L1: Im weiteren Verlauf werden vor allem Kommentare betrachtet, daneben auch Likes und Shares.

Level 2 (Universitäts-/Seitenebene)

L2-Variablen sind die Zahl der Fans/Follower (uni_fans) sowie ob es sich um eine US-amerikanische Universität handelt (ja/nein). Die Fanzahl könnte eigentlich zeitlich variieren, wurde aber nur einmal erhoben und wird deshalb im konkreten Design als L2-Variable behandelt. Die Ebenenzuordnung hängt also auch vom Forschungsdesign ab.

Log-Transformation

Likes, Kommentare, Shares sowie einige Prädiktoren sind stark rechtsschief verteilt. Deshalb werden logarithmische Transformationen angewendet.

Statistisch werden dadurch extreme Werte komprimiert. Inhaltlich werden relative Veränderungen wichtiger als absolute Unterschiede: Ein Anstieg von 10 auf 20 Kommentare ist bedeutsamer als ein Anstieg von 1000 auf 1010. Koeffizienten können durch die Logarithmierung als prozentuale Veränderungen interpretiert werden.

Für die Zählvariablen Wortzahl, Kommentare, Likes und Shares wird log1p verwendet (also \(log(x + 1)\)), um Nullwerte zu vermeiden. Für die Fanzahl der Universitäten reicht log, da diese nie null ist. Das Ergebnis sind neue, logarithmierte Versionen aller betroffenen Variablen, die für alle weiteren Modelle verwendet werden.

Der Datensatz liegt im Long-Format vor: Jede Zeile entspricht genau einem Post. L1-Variablen können sich innerhalb derselben Universität verändern; L2-Variablen bleiben für alle Posts derselben Universität konstant und wiederholen sich in jeder Zeile.

Nullmodell und Varianzzerlegung

Das Nullmodell enthält keine Prädiktoren und dient dazu, die Gesamtvarianz in einen Gruppen- und einen Individualanteil zu zerlegen. Die Kommentarzahl eines Posts setzt sich dabei aus drei Komponenten zusammen: dem allgemeinen Gesamtmittelwert (\(\gamma_{00}\)), einer gruppenspezifischen Abweichung der jeweiligen Universität (\(u_{0j}\)) und einer individuellen Abweichung des einzelnen Posts vom Universitätsmittelwert (\(e_{ij}\)).

In R wird das Nullmodell mit dem Paket lme4 geschätzt. Die abhängige Variable ist die logarithmierte Kommentarzahl; als einzige Modellstruktur wird angegeben, dass jede Universität einen eigenen zufälligen Achsenabschnitt (Random Intercept) erhalten soll. Es werden keine weiteren Prädiktoren aufgenommen.

Geschätzte Parameter:

  • Gesamtmittelwert \(\gamma_{00} \approx 1.72\) (auf der Log-Skala)
  • Standardabweichung der Uni-spezifischen Abweichungen \(\tau_{00} \approx 0.81\)
  • Residualstandardabweichung \(\sigma \approx 1.01\)

Der Vorhersage-Plot des Nullmodells (Forest Plot) zeigt die uni-spezifischen Intercepts mit Konfidenzintervallen für alle 42 Universitäten. Es sind deutliche Unterschiede sichtbar: Einige Seiten liegen weit über, andere weit unter dem Gesamtmittelwert.

ICC und Bedeutung der Gruppierung

Die Intraclass Correlation (ICC) beschreibt den Anteil der Gesamtvarianz, der auf Unterschiede zwischen Gruppen zurückgeht. Sie wird berechnet als Quotient aus der Varianz auf Gruppenebene und der Gesamtvarianz (Gruppen- plus Individualvarianz):

\(ICC = \tau_{00}^2 / (\tau_{00}^2 + \sigma^2) = 0.81^2 / (0.81^2 + 1.01^2) \approx 0.39\)

Rund 39 % der Unterschiede in den Kommentarzahlen hängen damit zusammen, von welcher Universität ein Post stammt. Die Gruppierungsstruktur ist damit substanziell relevant.

  • Hoher ICC \(\rightarrow\) L2-Prädiktoren besonders interessant (viel Varianz auf Gruppenebene erklärt durch Kontextunterschiede)
  • Niedriger ICC \(\rightarrow\) L1-Prädiktoren wichtiger (Varianz liegt eher innerhalb der Gruppen)

Würde man die Gruppierung ignorieren, entstünden zu kleine Standardfehler und damit erhöhte Alpha-Fehler-Wahrscheinlichkeiten.

L1-Prädiktoren im Random-Intercept-Modell

Im nächsten Schritt werden L1-Prädiktoren hinzugefügt. Jede Universität erhält weiterhin einen eigenen Intercept; zusätzlich werden Eigenschaften einzelner Posts modelliert. In R wird dafür dieselbe Modellstruktur wie im Nullmodell verwendet (Random Intercept pro Universität), ergänzt um die Themenvariablen topic_interact, topic_research und topic_teaching als Fixed Effects. Diese Koeffizienten gelten zunächst als über alle Universitäten hinweg konstant.

Der Intercept beschreibt den erwarteten Wert für Posts, bei denen alle Prädiktoren 0 sind – also Posts, die keines der genannten Themen haben.

Interpretation der Ergebnisse

Ergebnisse des Random-Intercept-Modells:

  • topic_interact: positiver signifikanter Effekt (\(\beta \approx +0.08\)) \(\rightarrow\) Interaktionsposts erhalten ca. 8 % mehr Kommentare.
  • topic_research: negativer signifikanter Effekt (\(\beta \approx -0.20\)) \(\rightarrow\) Forschungsposts erhalten ca. 20 % weniger Kommentare.
  • topic_teaching: kein signifikanter Effekt.

Diese Prozentinterpretationen sind durch die logarithmierte abhängige Variable möglich.

Zwei R²-Maße werden unterschieden:

  • Marginales R² \(\approx\) 1 %: Varianzanteil, der allein durch die Fixed Effects erklärt wird. Dieser Wert ist sehr klein, weil die Themenvariablen wenig L1-Varianz aufklären.
  • Konditionales R² \(\approx\) 39 %: Varianzanteil, der durch Fixed Effects und Random Effects zusammen erklärt wird. Dieser Wert entspricht ungefähr dem ICC – der größte Teil der erklärten Varianz geht also auf die Gruppenstruktur zurück, nicht auf die Prädiktoren selbst.

Fazit

Geschachtelte Daten müssen statistisch korrekt modelliert werden, weil sonst Regressionsannahmen verletzt werden. Mehrebenenmodelle erlauben es zusätzlich, Kontextstrukturen inhaltlich zu analysieren – Unterschiede zwischen Gruppen, Unterschiede innerhalb von Gruppen sowie Wechselwirkungen zwischen Ebenen können systematisch untersucht werden.

Für die weitere Arbeit ist entscheidend: Ebenen sauber trennen und Variablen korrekt zuordnen, den ICC berichten und interpretieren, sowie Ergebnisse sowohl statistisch als auch inhaltlich auswerten – mit klarer Unterscheidung zwischen marginalen und konditionalen R²-Werten.

19.6 Teil 2

Diese Sitzung setzt die Einführung in Mehrebenenmodelle (auch: Mehrebenanalyse oder Multilevel-Modelle) fort. Das Ziel ist, die Grundlogik dieser Modelle zu festigen und dann schrittweise komplexere Modellvarianten kennenzulernen: vom Null-Modell über das Random-Intercept-Modell mit Prädiktoren bis hin zum Random-Slope-Modell und der Cross-Level-Interaktion.

Als durchgängiges Beispiel dient die Studie von Fähnrich et al. (2020): „Evaluating universities’ strategic online communication: how do Shanghai Ranking’s top 50 universities grow stakeholder engagement with Facebook posts?” Dabei wurden über 72.000 Facebook-Posts der Top-50-Universitäten des Shanghai Rankings inhaltsanalytisch ausgewertet. Die abhängigen Variablen sind Likes, Kommentare und Shares. In der Vorlesung steht vor allem die Anzahl der Kommentare im Mittelpunkt.

Warum brauchen wir Mehrebenenmodelle?

Einstieg mit Wiederholung des konkreten Beispiels:

  • Level 1 (L1): Die einzelnen Facebook-Posts mit ihren Eigenschaften (z. B. Thema des Posts, Anzahl der Kommentare). Das sind die Einheiten der unteren Ebene.
  • Level 2 (L2): Die Universitäts-Facebook-Seiten, von denen die Posts stammen (z. B. Harvard, MIT, Stanford). Das sind die Einheiten der oberen Ebene.

Jeder Post gehört genau zu einer Uni-Seite. Eigenschaften wie die Anzahl der Fans einer Seite sind dabei keine Eigenschaft des einzelnen Posts, sondern der Seite – sie variieren also nur zwischen den Seiten, nicht zwischen den Posts innerhalb einer Seite.

Würde man diesen Umstand ignorieren und einfach eine klassische Regression rechnen, entstünden statistische Probleme: Die Beobachtungen innerhalb einer Seite sind nicht unabhängig voneinander, weil sie alle von derselben Seite stammen und dadurch schon allein strukturell ähnlicher sind als Posts verschiedener Seiten. Ein Mehrebenenmodell berücksichtigt diese Abhängigkeiten explizit und ermöglicht dadurch sowohl korrektere Schätzungen als auch inhaltlich reichhaltigere Aussagen.

Wiederholung: Das Null-Modell und die Intraklassenkorrelation (ICC)

Das Null-Modell (auch: leeres Modell) enthält keine inhaltlichen Prädiktoren. Es modelliert nur die Mehrebenenstruktur selbst.

Die Besonderheit des Mehrebenenmodells ist der Random Intercept: Statt eines einzigen globalen Mittelwerts bekommt jede Uni-Seite einen eigenen Achsenabschnitt (Intercept). Das bedeutet, das Modell schätzt für jede Uni, wie viele Kommentare ihre Posts im Durchschnitt erhalten – und diese Werte können zwischen den Unis stark variieren. Die Visualisierung dieses Modells zeigt deutlich, dass manche Uni-Seiten (z. B. Harvard, University of Washington) im Schnitt sehr viele Kommentare erzielen, während andere (z. B. Rockefeller University, UT Southwestern) sehr wenige erhalten.

Die zentrale Kennzahl aus dem Null-Modell ist die Intraklassenkorrelation (Intraclass Correlation, ICC). Sie gibt an, welcher Anteil der gesamten Varianz in der abhängigen Variable auf die Unterschiede zwischen den L2-Einheiten (hier: die Uni-Seiten) zurückzuführen ist – und damit, wie viel Varianz sich überhaupt durch Eigenschaften der Seiten erklären ließe.

Berechnung: \(ICC = \tau_0^2 / (\tau_0^2 + \sigma^2)\)

Im Beispiel:

  • \(\tau_0 = 0.81\) (Standardabweichung der Uni-Seiten-Effekte)
  • \(\sigma = 1.01\) (Restvarianz auf Postebene)
  • ICC \(\approx\) 0.39, also ca. 39% der Varianz liegt zwischen den Uni-Seiten

Das bedeutet: Fast 40 % der Unterschiede in der Kommentarzahl lassen sich prinzipiell durch Eigenschaften der Uni-Seiten erklären – nicht durch den Inhalt der einzelnen Posts. Für eine Social-Media-Redakteurin wäre das ein ernüchternder Befund: Ein erheblicher Teil der Reichweite hängt schlicht davon ab, für welche Uni man arbeitet, nicht davon, was man postet.

Das Random-Intercept-Modell mit L1-Prädiktoren (Modell 1)

Im nächsten Schritt fügt man inhaltliche Prädiktoren auf der Post-Ebene (L1) ein – also Eigenschaften, die für jeden Post individuell gemessen wurden. Im Beispiel sind das drei Themen-Variablen:

  • topic_interact: Handelt der Post vom Thema Interaktion mit der Community?
  • topic_research: Handelt der Post vom Thema Forschung?
  • topic_teaching: Handelt der Post vom Thema Lehre?

Diese Modellform heißt Random-Intercept-Modell: Jede Uni-Seite hat weiterhin ihren eigenen Intercept (also ihr eigenes durchschnittliches Kommentarniveau), aber die Effekte der Prädiktoren (die Slopes) sind für alle Seiten gleich – sogenannte Fixed Effects.

Ergebnisinterpretation

Da die abhängige Variable logarithmiert wurde, werden die Koeffizienten in prozentualen Veränderungen interpretiert:

  • topic_interact: Posts zum Thema Interaktion erzielen im Schnitt mehr Kommentare (Koeffizient ca. \(+0.10\), statistisch signifikant).
  • topic_research: Posts zum Thema Forschung erzielen im Schnitt ca. 20 % weniger Kommentare (Koeffizient ca. \(-0.20\), statistisch signifikant). Über alle Seiten gemittelt ist es also nachteilhaft, über Forschung zu posten.
  • topic_teaching: Posts über Lehre erzielen ebenfalls weniger Kommentare (Koeffizient ca. \(-0.10\), statistisch signifikant).

Erklärte Varianz: Marginales vs. Konditionales R²

Bei Mehrebenenmodellen gibt es zwei verschiedene R²-Werte:

  • Marginales R² (Marginal R²): Gibt an, wie viel Varianz durch die Fixed Effects (also die inhaltlichen Prädiktoren) erklärt wird – über die Mehrebenenstruktur hinaus. Im Beispiel: nur etwa 1 % – die drei Themen-Variablen tragen wenig zur Gesamterklärung bei.
  • Konditionaler R² (Conditional R²): Gibt an, wie viel Varianz das gesamte Modell erklärt, also inklusive der Berücksichtigung der Uni-Seiten-Struktur. Dieser Wert liegt nahe am ICC (\(\approx 39 \%\)), weil die Seiten-Zugehörigkeit allein schon sehr viel erklärt.

Das bedeutet: Die drei inhaltlichen Variablen haben zwar statistisch signifikante Effekte, aber ihre Erklärungskraft für die gesamte Varianz ist gering. Der Großteil der Unterschiede wird durch die Seiten-Zugehörigkeit erklärt, nicht durch den konkreten Inhalt des Posts.

Das Random-Intercept-Modell mit L2-Prädiktoren (Modell 2)

Da fast 40 % der Varianz durch die Seiten erklärt wird, liegt es nahe, Eigenschaften der Seiten als Prädiktoren aufzunehmen. Das sind Level-2-Variablen: Sie haben für jeden Post, der von derselben Seite stammt, denselben Wert.

Im Beispiel: die logarithmierte Anzahl der Fans einer Uni-Seite (uni_fans_log).

Das Modell erkennt automatisch, dass uni_fans_log eine L2-Variable, weil jede Seite für diese Variable denselben Wert hat – der Wert variiert nur zwischen den Seiten, nicht innerhalb.

Ergebnisinterpretation

Der Koeffizient für uni_fans_log beträgt ca. \(+0.80\) und ist hochsignifikant (\(t\)-Wert \(> 9\)). Da beide Variablen logarithmiert sind (Kommentarzahl und Fanzahl), lautet die Interpretation:

Eine Verdopplung der Anzahl der Fans einer Uni-Seite ist mit ca. 50 % mehr Kommentaren pro Post assoziiert.

Das ist inhaltlich gut nachvollziehbar: Je mehr Followers eine Seite hat, desto mehr Personen sehen ihre Posts – und desto größer ist die Chance, dass jemand kommentiert. Dieser Effekt ist deutlich stärker als die inhaltlichen L1-Effekte (Forschung: \(-20 \%\), Fans verdoppelt: \(+50 \%\)).

Das marginale R² steigt von 1 % (Modell 1) auf ca. 25 % durch das Hinzufügen der Fan-Zahl. Das heißt: Ein Viertel der gesamten Varianz in den Kommentarzahlen lässt sich allein durch die Anzahl der Fans der Uni-Seite erklären – das ist die Varianz zwischen den Seiten.

Wichtig: Die Fan-Zahl kann nur Unterschiede zwischen Seiten erklären. Sie kann nicht erklären, warum sich zwei Posts, die von derselben Seite stammen, in ihrer Kommentarzahl unterscheiden – dafür braucht man L1-Prädiktoren.

Das Random-Slope-Modell (Modell 3)

Die Idee: Effektheterogenität

Bisher wurden alle Effekte als für alle Uni-Seiten gleich angenommen – als sogenannte Fixed Effects. Das ist eine starke Vereinfachung. Es ist gut möglich, dass das Thema Forschung bei manchen Uni-Seiten einen stärker negativen Effekt hat als bei anderen – oder vielleicht sogar einen positiven.

Dieses Phänomen heißt Effektheterogenität: Effekte variieren je nach Kontext (hier: je nach Uni-Seite). Um das zu untersuchen, lässt man den Effekt eines L1-Prädiktors zwischen den L2-Einheiten variieren. Man spricht dann von einem Random Slope – der Slope (Koeffizient) des Prädiktors darf nicht mehr fix sein, sondern ist „random”, also zufällig über die Seiten verteilt.

Das Modell schätzt jetzt nicht nur einen durchschnittlichen Effekt von topic_research, sondern auch die Varianz dieses Effekts zwischen den Uni-Seiten sowie eine Korrelation zwischen dem Random Intercept und dem Random Slope.

Modellvergleich: Lohnt sich das komplexere Modell?

Das Random-Slope-Modell hat zwei zusätzliche Parameter gegenüber Modell 2 (die Varianz des Random Slopes und die Kovarianz zwischen Intercept und Slope). Um zu entscheiden, ob diese Komplexität gerechtfertigt ist, vergleicht man die Modelle:

  • Informationskriterien (AIC, BIC): Niedrigere Werte bedeuten ein besseres Modell (relativ). Beim Vergleich von Modell 2 und Modell 3 sinkt der AIC deutlich – das spricht für das komplexere Modell.
  • Likelihood-Ratio-Test (\(\chi^2\)-Test): Die Differenz der doppelten Log-Likelihood-Werte ist \(\chi^2\)-verteilt. Im Beispiel ergibt sich \(\chi^2(2) = 19.77\), \(p < .001\). Das bedeutet: Die Null-Hypothese, dass beide Modelle gleich gut passen, wird verworfen. Das Random-Slope-Modell passt signifikant besser zu den Daten.

Für die Klausur wichtig: Man muss die Formeln nicht kennen, aber das Prinzip verstehen – zwei Modelle werden verglichen, und wenn das komplexere Modell signifikant besser ist, bevorzugen wir es.

Ergebnisinterpretation des Random-Slope-Modells

Fixed Effect (Durchschnittlicher Effekt über alle Seiten): Der durchschnittliche Effekt von topic_research liegt weiterhin bei ca. \(-0.20\) (ca. 20 % weniger Kommentare für Forschungs-Posts), jetzt aber mit etwas größeren Konfidenzintervallen, weil die Variabilität zwischen den Seiten explizit modelliert wird.

Random Effect (Variabilität des Effekts): Die Standardabweichung des Random Slopes für topic_research beträgt ca. \(0.18\). Das heißt: Der Effekt von Forschungsthemen schwankt zwischen den Seiten in einer Größenordnung von ungefähr \(\pm 0.18\) um den Mittelwert von \(-0.20\). Plausible Koeffizienten liegen also im Bereich von etwa \(-0.40\) bis \(0.00\) – d.h. für manche Seiten hat das Forschungsthema kaum einen negativen Effekt, für andere ist er fast doppelt so stark.

Grafische Darstellung der Random Slopes: zeigt die geschätzten Slopes für jede einzelne Uni-Seite mit Konfidenzintervallen:

  • Einige Seiten (z. B. Duke University) zeigen einen stark negativen Slope: Forschungs-Posts erhalten dort fast 40–50 % weniger Kommentare als andere Posts.
  • Andere Seiten (z. B. MIT) zeigen einen Slope nahe Null: Bei ihnen macht es kaum einen Unterschied, ob über Forschung gepostet wird.
  • Keine Seite zeigt einen klar positiven Slope.

Inhaltlich interpretiert: Die Follower von Duke folgen der Seite vielleicht primär wegen Sportthemen (Basketball). Forschungs-Posts treten dort in direkter Konkurrenz zu populären Sportposts und erzielen entsprechend weniger Engagement. Beim MIT hingegen folgen vermutlich viele forschungsinteressierte Personen der Seite – dort schadet ein Forschungspost kaum.

Dieses Ergebnis ist deutlich informativer als nur der durchschnittliche Effekt. Statt zu sagen „Forschungsthemen führen zu 20 % weniger Kommentaren”, kann man nun zeigen, dass dieser Effekt je nach Seite erheblich variiert.

Die Korrelation zwischen Random Intercept und Random Slope

Ein weiterer Parameter im Random-Slope-Modell ist die Korrelation zwischen dem Random Intercept und dem Random Slope (ca. \(-0.2\) im Beispiel). Diese ist etwas abstrakter und sollte mit Vorsicht interpretiert werden.

Was bedeutet sie? Der Intercept (wenn topic_research = 0, also der vorhergesagte Kommentarwert für Nicht-Forschungs-Posts) und der Slope (der Effekt von Forschung) korrelieren negativ. Das heißt: Seiten, bei denen Nicht-Forschungs-Posts besonders viele Kommentare erhalten, zeigen tendenziell einen stärker negativen Effekt für Forschungs-Posts. Intuitiv: Wenn eine Seite sehr populäre, stark kommentierte Nicht-Forschungs-Inhalte hat (z. B. Sportbeiträge wie bei Duke), sind Forschungsbeiträge im Vergleich dazu besonders unattraktiv. Diese Korrelation hängt stark von der konkreten Stichprobe ab und sollte daher nicht überinterpretiert werden.

Cross-Level-Interaktion (Modell 4)

Die Idee

Im Random-Slope-Modell hat man gesehen, dass der Effekt von Forschungsthemen zwischen den Uni-Seiten variiert. Nun stellt sich die Frage: Lässt sich diese Variation durch eine Eigenschaft der Seiten erklären? Konkret: Unterscheidet sich der Effekt von Forschungs-Posts je nachdem, wie viele Fans eine Seite hat?

Das entspricht einer Moderation auf Ebene der Seiten: Eine L2-Variable (Fans) moderiert den Effekt einer L1-Variable (Forschungsthema) auf das Outcome (Kommentare). In der Mehrebenenanalyse nennt man das eine Cross-Level-Interaktion, weil die interagierenden Variablen auf verschiedenen Ebenen angesiedelt sind.

Wichtig: Eine Cross-Level-Interaktion sollte nur dann modelliert werden, wenn vorher gezeigt wurde, dass der Effekt tatsächlich zwischen den L2-Einheiten variiert – d.h. wenn das Random-Slope-Modell signifikant besser ist als das Random-Intercept-Modell. Sonst macht es keinen Sinn, nach Erklärungen für Varianz zu suchen, die gar nicht nachgewiesen ist.

Ergebnisinterpretation

Im vorliegenden Beispiel ergibt sich für den Interaktionsterm topic_research \times uni_fans_log ein Koeffizient von ca. \(-0.05\), aber dieser ist nicht statistisch signifikant (\(p \approx 0.10\)). Das bedeutet: Die Daten erlauben es nicht, die Null-Hypothese zu verwerfen, dass der Effekt von Forschungsthemen unabhängig von der Fanzahl der Seite ist.

Grafisch lässt sich der (nicht-signifikante) Trend zeigen: Für Seiten mit wenigen Fans wäre der Effekt von Forschungsthemen eher neutral oder leicht positiv; für sehr reichweitenstarke Seiten wäre er tendenziell negativer. Diese Interpretation ist jedoch spekulativ, da der Effekt statistisch nicht zu sichern ist.

Was wäre die inhaltliche Interpretation, wenn er signifikant wäre? Seiten mit wenigen Fans richten sich eher an ein akademisch spezifisch interessiertes Publikum – bei denen könnte Forschung sogar positiv ankommen. Seiten mit sehr vielen Fans sprechen ein breites, heterogenes Publikum an (Alumni, Sportfans, Studierende) – bei denen verliert Forschung im Vergleich zu anderen Inhalten an Aufmerksamkeit.

Die Gesamtlogik der Mehrebenanalyse – Zusammenfassung

Modelle werden schrittweise aufgebaut, von einfach zu komplexer:

  • Schritt 1 – Null-Modell: Wie viel der Varianz liegt zwischen den L2-Einheiten? (ICC \(\approx 39 \%\)) \(\rightarrow\) Mehrebenenstruktur ist relevant.
  • Schritt 2 – Random-Intercept-Modell mit L1-Prädiktoren: Welche Eigenschaften der Posts erklären Unterschiede in den Kommentaren? (Forschungsthema: \(-20 \%\), marginales R² = 1 %) \(\rightarrow\) Inhaltliche Prädiktoren erklären wenig.
  • Schritt 3 – Random-Intercept-Modell mit L2-Prädiktoren: Welche Eigenschaften der Seiten erklären Unterschiede? (Fanzahl: \(+50 \%\) bei Verdopplung, marginales R² = 25 %) \(\rightarrow\) Seiten-Eigenschaften erklären viel mehr.
  • Schritt 4 – Random-Slope-Modell: Variiert der Effekt des Forschungsthemas zwischen den Seiten? (\(\sigma = 0.18\), Modellvergleich signifikant) \(\rightarrow\) Ja, es gibt Effektheterogenität.
  • Schritt 5 – Cross-Level-Interaktion: Erklärt die Fanzahl diese Variation? (nicht signifikant) \(\rightarrow\) In diesem Fall: Nein.

Wichtige Begriffe im Überblick

  • Level 1 (L1): Die untere Beobachtungsebene (im Beispiel: einzelne Posts).
  • Level 2 (L2): Die obere Gruppenebene (im Beispiel: Uni-Seiten).
  • Random Intercept: Jede L2-Einheit bekommt einen eigenen Achsenabschnitt (Mittelwert). Modelliert die Unterschiede zwischen Gruppen.
  • Fixed Effect: Ein Effekt, der für alle L2-Einheiten gleich angenommen wird. Wird in der Regressionstabelle als einzelner Koeffizient ausgewiesen.
  • Random Slope: Der Effekt eines Prädiktors darf zwischen den L2-Einheiten variieren. Es wird sowohl ein mittlerer Effekt (Fixed Effect) als auch die Streuung dieses Effekts (Varianzparameter) geschätzt.
  • ICC (Intraclass Correlation Coefficient): Anteil der Gesamtvarianz, der auf Unterschiede zwischen L2-Einheiten zurückgeht. Berechnung: \(\tau_0^2 / (\tau_0^2 + \sigma^2)\).
  • Marginales R²: Varianzanteil, der durch die Fixed Effects erklärt wird.
  • Konditionaler R²: Varianzanteil, der durch das gesamte Modell (Fixed + Random Effects) erklärt wird.
  • Modellvergleich (Likelihood-Ratio-Test / AIC, BIC): Verfahren, um zu entscheiden, ob ein komplexeres Modell signifikant besser zu den Daten passt als ein einfacheres.
  • Cross-Level-Interaktion: Interaktionseffekt zwischen einer L1-Variable und einer L2-Variable; untersucht, ob der Effekt eines Post-Merkmals von einer Seiten-Eigenschaft abhängt.
  • Effektheterogenität: Die Erscheinung, dass ein Effekt für verschiedene Gruppen (L2-Einheiten) unterschiedlich ausfällt.

Anwendungsfelder in der Kommunikationswissenschaft

Mehrebenenstrukturen sind in der empirischen Kommunikations- und Medienforschung weit verbreitet:

  • Social-Media-Analysen: Posts gehören zu Accounts oder Seiten (wie im Beispiel).
  • Within-Subjects-Experimente: Versuchspersonen sehen mehrere Stimuli – die wiederholten Messungen sind innerhalb von Personen genested.
  • Experience Sampling / ESM: Mehrere Befragungszeitpunkte pro Person (z. B. Push-Benachrichtigungen tagsüber).
  • Web-Tracking-Daten: Viele Websitebesuche pro Person.
  • Inhaltsanalysen von Medienberichterstattung: Artikel gehören zu Redaktionen oder Medienangeboten.
  • Cross-Plattform-Analysen: Posts verschiedener Personen auf verschiedenen Plattformen.

In allen diesen Fällen verletzt eine einfache OLS-Regression die Annahme der Unabhängigkeit der Beobachtungen, was zu verzerrten Standardfehlern und falschen Schlussfolgerungen führen kann. Mehrebenenmodelle lösen dieses Problem und eröffnen zugleich interessante inhaltliche Fragen nach Effektheterogenität und deren Erklärung.