1 Der Datensatz

In unserem Beispiel soll untersucht werden, ob sich das Schauen der Sesamstraße auf die Zahlenkenntnisse von Kindern auswirkt. Dazu wurden 240 Kinder zufällig in zwei ungleich große Gruppen geteilt; eine Gruppe wurde dazu ermutigt, die Sesamstraße zu schauen (Interventionsgruppe; IG), während die andere Gruppe nicht dazu ermutigt wurde (Kontrollgruppe; KG). Ein halbes Jahr später wurden zum einen die Zahlenkenntnisse der Kinder erhoben, zum anderen, ob die Kinder tatsächlich die Sesamstraße geschaut haben. Diese Daten basieren auf dem Beispiel in Gelman & Hill (2006). Wir nutzen den simulierten Datensatz sesam aus der Datei sesam.rda mit den folgenden Variablen:

  • schauen: tatsächliches Schauen der Sesamstraße (0 = kein Schauen, 1 = Schauen) (Interventionsvariable)
  • zahlenkenntnisse: Zahlenkentnisse (Skala von 0 bis 70) (Outcome-Variable)
  • ermutigung: Ermutigung, die Sesamstraße zu schauen (0 = keine Ermutigung, 1 = Ermutigung) (Instrumentenvariable)


2 Erklärung der R-Funktion

Für den Instrumenten-Variablen-Ansatz verwenden wir die Funktion tsls() aus dem Paket sem. Die folgende Tabelle bietet eine Übersicht der relevanten Argumente der Funktion.

Argument Bedeutung
tsls(
y ~ x1, Outcome-Variable (y) zurückgeführt auf die Interventionsvariable (x1)
instruments = ~ x2, Instrumentenvariable (x2)
data) Datensatz


3 Vorbereitung

Zunächst installieren (falls nötig) und laden wir das Paket sem, welches wir für den Instrumenten-Variablen-Ansatz benötigen:

# install.packages("sem")                # Installation des Pakets sem vor erster Nutzung
library(sem)                             # Laden des Pakets sem

Anschließend lesen wir den Datensatz ein:

load("sesam.rda")      # Einlesen des Datensatzes (wenn der Datensatz nicht im 
                       # Arbeitsverzeichnis liegt, muss der Pfad entsprechend dem
                       # Speicherort des Datensatzes angepasst werden)

4 Deskriptive Analyse

Zunächst schauen wir uns die Compliance der untersuchten Kinder an. Wir schauen uns also an, wie viele der ermutigten und wieviele der nicht ermutigten Kinder die Sesamstraße (nicht) angesehen haben. Dazu lassen wir uns eine Kreuztabelle mit absoluten Häufigkeiten ausgeben:

tab <- table(sesam$ermutigung, sesam$schauen,       # Vierfeldertafel mit absoluten Häufigkeiten
                                                    # für die Kombinationen aus der Ermutigung                  
                                                    # und dem tatsächlichen Schauen
             
             dnn = c("Ermutigung", "Schauen"))      # Beschriftung der Tabelle

addmargins(tab)                                     # Tabelle mit Randsummen ausgeben
##           Schauen
## Ermutigung   0   1 Sum
##        0    43  45  88
##        1    16 136 152
##        Sum  59 181 240

Es haben 240 Kinder an der Studie teilgenommen. 152 von ihnen wurden ermutigt, die Sesamstraße zu schauen, während 88 nicht ermutigt wurden. 181 Kinder haben die Sesamstraße tatsächlich geschaut und 59 taten dies nicht. Von allen 152 Kindern, die ermutigt wurden, haben 136 die Sesamstraße geschaut und 16 Kinder nicht. Von allen 88 Kindern, die nicht ermutigt wurden, haben 43 die Sesamstraße nicht geschaut, 45 Kinder haben die Sesamstraße auch ohne Ermutigung angesehen. Wir sehen also, dass sich nicht alle Kinder entsprechend der (Nicht-)Ermutigung verhalten haben.

Wir schauen uns nun den Anteil der Personen an, die sich an die entsprechende Ermutigung oder Nicht-Ermutigung gehalten haben, indem wir die relativen Häufigkeiten bezogen auf die Ermutigung (Zeilenprozente) berechnen.

round(                                 # runden
  addmargins(                          # Randsummen hinzufügen
    prop.table(tab, margin = 1)),      # relative Häufigkeiten bzgl. der Zeilensummen   
    digits = 2)                        # auf zwei Nachkommastellen (runden)
##           Schauen
## Ermutigung    0    1  Sum
##        0   0.49 0.51 1.00
##        1   0.11 0.89 1.00
##        Sum 0.59 1.41 2.00

Wir sehen, dass 89% der Kinder, die dazu ermutigt wurden, auch tatsächlich die Sesamstraße geschaut haben. Von den Kindern, die nicht dazu ermutigt wurden, sahen nur 51% die Sendung. Man erkennt hier bereits einen Zusammenhang. Die Höhe des Zusammenhangs können wir berechnen.

cor(sesam$ermutigung, sesam$schauen) # Korrelation zwischen Ermutigung und Schauen
## [1] 0.429

Die Ermutigung und das tatsächliche Schauen der Sesamstraße korrelieren zu \(\phi\) = 0,43. Es gibt einen mittelstarken Zusammenhang zwischen der Ermutigung und dem Schauen der Sesamstraße: Ermutigung führt zu vermehrtem Schauen der Sesamstraße.

Wir schauen uns im Folgenden an, wie mit Non-Compliance umgegangen werden kann. Im Buch wurden vier verschiedene Ansätze vorgestellt, deren Umsetzung hier demonstriert werden soll.


5 As-Treated

Der As-Treated-Ansatz zielt auf die Bestimmung des kausalen Effekts des Schauens der Sesamstraße ab, ignoriert jedoch die Variable der Bedingungszuweisung, in unserem Fall also die Ermutigung. Es wird der mittlere Unterschied der Outcome-Variable berechnet, also der Unterschied der mittleren Zahlenkenntnisse zwischen allen, die Sesamstraße geschaut haben (Interventionsgruppe) und denen, die sie nicht geschaut haben (Kontrollgruppe). Wir bestimmen den Mittelwertsunterschied, indem wir eine Regression der Outcome-Variable (Zahlenkenntnisse) auf die Interventionsvariable (Schauen der Sesamstraße) schätzen.

m_as_treated <- lm(zahlenkenntnisse ~ schauen, # Regression zur Vorhersage der Zahlenkenntnisse 
                                               # aus dem Schauen der Sesamstraße
                   
                   data = sesam)               # Datensatz

summary(m_as_treated)$coef                     # Ausagabe der Regressionskoeffizienten 
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)   37.061       1.43  25.865 4.32e-71
## schauen       -0.405       1.65  -0.246 8.06e-01

Kinder, die die Sesamstraße schauen, haben im Mittel um 0,410 Punkte geringere Zahlenkenntnisse als Kinder, die die Sesamstraße nicht schauen. Dieser Effekt ist nicht signifikant (\(SE\) = 1,650; \(t(1)\) = -0,250; \(p\) = 0,810).

Der resultierende Effekt sollte nicht kausal interpretiert werden. Da das Schauen der Sesamstraße nicht randomisiert wurde, können Selektionseffekte auftreten. (Mögliche) Unterschiede der Gruppen bezüglich ihrer Kovariatenausprägungen sollten daher durch Adjustierungsmethoden wie die ANCOVA, Kovariatenmatching oder PS-Methoden kontrolliert werden.


6 Per-Protocol

Der Per-Protocol-Ansatz zielt ebenfalls auf die Schätzung des kausalen Effektes des Schauens der Sesamstraße ab. In die Analyse werden dabei - im Gegensatz zum Vorgehen beim As-Treated-Ansatz - jedoch nur Personen aufgenommen, die sich an die Bedingungszuweisung gehalten haben. In unserem Beispiel also nur Kinder, die ermutigt wurden und die Sesamstraße dann tatächlich geschaut haben und Kinder, die nicht ermutigt wurden und die Sesamstraße auch nicht schauten.

Im ersten Schritt erstellen wir einen neuen Datensatz, der nur diese Fälle enthält:

# Erstellung des neuen Datensatzes:
  # Es werden nur Personen (Zeilen) beibehalten, bei denen der Wert des Schauens dem der Ermutigung entspricht
sesam_per_protocol <- sesam[sesam$ermutigung == sesam$schauen,] 

nrow(sesam_per_protocol)   # Ausgabe der Anzahl der Personen im Datensatz
## [1] 179

Von den 240 Kindern, die an der Studie teilgenommen haben, haben sich 179 gemäß der Ermutigung oder Nicht-Ermutigung verhalten. Nur diese werden in der Analyse berücksichtigt.

Anschließend schätzen wir den mittleren Unterschied der Zahlenkenntnisse zwischen den beiden Interventionsgruppen. Dazu spezifizieren wir eine Regression zur Vorhersage der Zahlenkenntnisse aus dem Schauen der Sesamstraße (nur für die Kinder, die sich entsprechend der Ermutigung verhalten haben):

m_per_protocol <- lm(zahlenkenntnisse ~ schauen,  # Regression zur Vorhersage der Zahlenkenntnisse 
                                                  # aus dem Schauen der Sesamstraße
                     
                     data = sesam_per_protocol)   # neuer Datensatz

summary(m_per_protocol)$coef                      # Ausgabe der Regressionskoeffizienten 
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)    35.71       1.73  20.656 4.96e-49
## schauen         1.26       1.98   0.637 5.25e-01

Kinder, die entsprechend der Ermutigung die Sesamstraße geschaut haben, haben im Mittel um 1,260 Punkte höhere Zahlenkenntnisse als Kinder, die entsprechend der ausbleibenden Ermutigung nicht die Sesamstraße geschaut haben. Dieser Effekt ist nicht signifikant (\(SE\) =1,980; \(t(1)\) = 0,637; \(p\) = 0,525).

Der resultierende Effekt ist nicht kausal interpretierbar, da das Schauen der Sesamstraße nicht zufällig zugewiesen wurde und Selektionseffekte auftreten können. Auch hier sollten Adjustierungsmethoden angewandt werden, um für mögliche Selektionseffekte zu kontrollieren.


7 Intention-To-Treat

Der Intention-To-Treat-Ansatz zielt nicht auf die Schätzung des kausalen Effekts des Schauens der Sesamstraße ab, sondern auf die Schätzung des kausalen Effekts der Ermutigung.

Statt dem Mittelwertsunterschied zwischen Kindern, die die Sesamstraße schauen und Kindern, die die Sesamstraße nicht schauen, wird in dieser Analyse der Mittelwertsunterschied zwischen Kindern, die ermutigt wurden und Kindern, die nicht ermutigt wurden geschätzt. Dazu spezifizieren wir eine Regression zur Vorhersage der Zahlenkenntnisse durch die Ermutigung.

m_intention <- lm(zahlenkenntnisse ~ ermutigung,   # Regression zur Vorhersage der Zahlenkenntnisse 
                                                   # durch die Ermutigung
                  
                  data = sesam)                    # Datensatz

summary(m_intention)$coef                          # Ausgabe der Regressionskoeffizienten
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)    35.70       1.17   30.50 3.35e-84
## ermutigung      1.67       1.47    1.14 2.57e-01

Die Ermutigung, die Sesamstraße zu schauen, führt im Mittel zu 1,670 Punkte höheren Zahlenkenntnissen im Vergleich zu keiner Ermutigung. Dieser Effekt ist nicht signifikant (\(SE\) = 1,470; \(t(1)\) = 1,140; \(p\) = 0,260). Dieser Effekt ist kausal interpretierbar, da die Zuweisung zur Ermutigung randomisiert erfolgte.


8 Instrumenten-Variablen-Ansatz

Im Instrumenten-Variablen-Ansatz wird der kausale Effekt des Schauens der Sesamstraße geschätzt. Dieser wird jedoch nicht für alle Kinder geschätzt, sondern nur für diejenigen, die sich an jegliche Bedingungszuweisung halten würden (Compliers). In unserem Beispiel sind dies die Kinder, die bei gegebener Ermutigung die Sesamstraße schauen würden, ohne Ermutigung jedoch nicht. Um den entsprechenden kausalen Effekt zu schätzen, benötigen wir sowohl das Instrument (die Ermutigung), als auch die Interventionsvariable (das tatsächliche Schauen).

Die Analyse läuft in zwei Schritten ab. Im ersten Schritt wird das tatsächliche Schauen (Interventionsvariable) durch die Ermutigung (Zuweisung/Instrument) vorhergesagt und die auf die Ermutigung bedingte Wahrscheinlichkeit des Schauens bestimmt. Im zweiten Schritt werden die Zahlenkenntnisse (Outcome-Variable) durch diese Wahrscheinlichkeit vorhergesagt.

Die Funktion tsls() aus dem Paket sem führt diese beiden Schritte direkt aus und gibt zusätzlich korrekte Standardfehler an, die bei dem vorliegenden zweischrittigen Verfahren (Two-Stage-Least-Squares) korrigiert werden müssen.

m_iv <- tsls(zahlenkenntnisse ~ schauen, # Vorhersage der Zahlenkenntnisse durch 
                                         # das Schauen der Sesamstraße
             
instruments = ~ ermutigung,              # Instrument (Ermutigung) 

data = sesam)                            # Datensatz

summary(m_iv)$coef                       # Ausgabe der Regressionskoeffizienten
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)    33.47       3.04   11.02    0.000
## schauen         4.36       3.91    1.11    0.266

Der geschätzte kausale Effekt des Schauens der Sesamstraße für solche Kinder, die sich an jegliche Bedingungszuweisung halten würden (Complier-Average-Treatment-Effekt, CATE), beträgt 4,360 Punkte. Dieser Effekt ist nicht signifikant (\(SE\) = 3,910; \(t(1)\) = 1,110; \(p\) = 0,270). Der Effekt ist kausal interpretierbar, wenn die Annahmen des Verfahrens (s. Buchkapitel) erfüllt sind.


9 Weiterführende Literatur

Eine umfassendere Beschreibung des Instrumenten-Variablen Ansatzes in R findet sich in:

Das Datenbeispiel wurde inspiriert von folgender Studie und deren Analyse in Gelmann & Hill (2007):

  • Kearney, M. S., & Levine, P. B. (2015). Early childhood education by MOOC: Lessons from Sesame Street. American Economic Journal: Applied Economics, 11(1), 318-350. https://doi.org/10.1257/app.20170300