1 Der Datensatz

Die Regressions-Diskontinuitäts-Analyse betrachten wir am (fiktiven) Beispiel des Einflusses einer Gruppentherapie für Betroffene postnataler Depression auf die empfundene Verbundenheit mit dem Neugeborenen. Wir nutzen den simulierten Datensatz mutter aus der Datei mutter.rda mit den folgenden Variablen:

  • therapie: Teilnahme an der Gruppentherapie (0 = keine Teilnahme, 1 = Teilnahme) (Interventionsvariable)
  • affektiv: Negative Affektivität postpartal (Skala von 0 bis 10) (Kontinuierliche Kovariate)
  • verbunden: subjektive Verbundenheit mit dem eigenen Kind (Skala von 0 bis 10) (Outcome-Variable)

Eine mütterliche Depression kann langfristig zu einer Bindungsstörung zwischen Mutter und Kind führen. Ziel der Gruppentherapie ist es, Mütter über das Störungsbild der postpartalen Depression aufzuklären, sie in den Austausch treten zu lassen und praktische Unterstützung im Umgang mit den Neugeborenen zu bieten. Dadurch soll unter anderem das Gefühl der Verbundenheit zwischen Mutter und Kind gestärkt werden. Um besonders Betroffenen Zugang zur Therapie zu gewährleisten, wurden alle Mütter mit einem Grenzwert negativer Affektivität nach der Geburt von über c = 6 behandelt (Interventionsgruppe; IG), während die anderen Mütter Teil der Kontrollgruppe (KG) waren.


2 Erklärung der R-Funktionen

Die Regressions-Diskontinuitäts-Analyse können wir mithilfe einiger Funktionen aus dem Paket rddtools durchführen. Die folgende Tabelle bietet eine Übersicht der relevanten Argumente der Funktion rdd_data(), mit der ein Datensatz für die Analyse vorbereitet werden kann:

Argument Bedeutung
rdd_data(
y, Outcome-Variable
x, Kontinuierliche Kovariate
cutpoint) Cutoff-Wert auf der kontinuierlichen Kovariate


Die folgende Tabelle bietet eine Übersicht der relevanten Argumente der Funktion rdd_bw_ik(), mit der die optimale Bandbreite geschätzt werden kann:

Argument Bedeutung
rdd_bw_ik(
rdd_object, mit der Funktion rdd_data() vorbereitetes Objekt
kernel) Kern, der bei der Kernregression verwendet werden soll, kernel = "Uniform", kernel = "Normal" oder kernel = "Triangular" (default)


Die folgende Tabelle bietet eine Übersicht der relevanten Argumente der Funktion rdd_reg_np(), mit der der durchschnittliche kausale Effekt auf Grundlage eines Teildatensatzes mit einer bestimmten (geschätzten optimalen) Bandbreite geschätzt werden kann:

Argument Bedeutung
rdd_reg_np(
rdd_object, mit der Funktion rdd_data() vorbereitetes Objekt
bw, Bandbreite, entweder ein festgelegter Wert, oder die aus der Funktion rdd_bw_ik() resultierende geschätzte optimale Bandbreite
slope, Angabe, ob die Interventions- und Kontrollgruppe die gleiche Steigung (slope = "same") oder unterschiedliche Steigungen (slope = "separate") haben sollen
inference) Art der Schätzung, entweder non-parametrisch (inference = "np") oder linear (inference = "lm")


3 Vorbereitung

Zunächst installieren (falls nötig) und laden wir das benötigte R-Paket.

# install.packages("rddtools")    # Installation vor der ersten Nutzung des Pakets rddtools

library(rddtools)                 # Laden des Paketes

Anschließend lesen wir den Datensatz ein:

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


4 Deskriptive Analyse

Um uns mit den Daten vertraut zu machen, schauen wir uns deskriptive Statistiken der Variablen an.

summary(mutter)
##    verbunden       therapie        affektiv    
##  Min.   :0.49   Min.   :0.000   Min.   : 0.46  
##  1st Qu.:4.60   1st Qu.:0.000   1st Qu.: 3.99  
##  Median :5.62   Median :0.000   Median : 4.88  
##  Mean   :5.54   Mean   :0.255   Mean   : 5.01  
##  3rd Qu.:6.54   3rd Qu.:1.000   3rd Qu.: 6.05  
##  Max.   :9.73   Max.   :1.000   Max.   :10.00

Da es sich bei therapie um eine dichotome Variable handelt, können wir anhand des Mittelwerts ablesen, dass 25,5% der Personen im Datensatz die Therapie bekommen haben.

Sowohl die negative Affektivität als auch die subjektive Verbundenheit variieren in der Stichprobe über die gesamte Skala. Im Mittel liegt eine mittlere negative Affektivität als auch Verbundenheit vor.

Sehen wir uns nun die subjektive Verbundenheit der Mütter zu ihren Kindern in Abhängigkeit von ihrer negativen Affektivität nach der Geburt an:

plot(verbunden ~ affektiv,           # Scatterplot mit dem Verbundenheitsgefühl in Abhängigkeit
                                     # von der negativen Affektivität postpartum
     
     data = mutter,                  # Datensatz
     
     xlab = "negative Affektivität", # Beschriftung der x-Achse
     
     ylab = "empf. Verbundenheit",   # Beschriftung der y-Achse
     
     pch = therapie+1)               # Datenpunkte unterschiedlich für jede Therapiegruppen darstellen

abline(v = 6)                        # Einzeichnen einer vertikalen Linie am Cutoff c = 6

# Legende hinzufügen
legend(x = 1, y = 3,                 # Position     
       
       legend = c("Kontrollgruppe", "Interventionsgruppe"),        # Beschriftung
       
       pch = 1:2)                    # Datenpunktdarstellung für jede Therapiegruppe
*Abbildung 1*: Streudiagramm der negativen Affektivität und der Verbundenheit getrennt nach Therapiegruppe

Abbildung 1: Streudiagramm der negativen Affektivität und der Verbundenheit getrennt nach Therapiegruppe

Die vertikale Linie des Cutoffs trennt die Interventionsgruppe (rechts) von der Kontrollgruppe (links). An diesem Cutoff wollen wir den Local Average Treatment Effect (LATE) mithilfe einer Regression schätzen.


5 Schätzung kausaler Effekte

Wir gehen hier zunächst von einem linearen Zusammenhang zwischen der negativen Affektivität nach der Geburt und der empfundenen Verbundenheit ohne Interaktion aus und spezifizieren deswegen eine einfache lineare Regression. Die Annahme kann natürlich falsch sein, deswegen sollten in der Praxis auch alternative Modelle verglichen werden.

m1 <- lm(verbunden ~ affektiv + therapie,  # lineare Regression der empfundenen Verbundenheit 
                                           # auf die negative Affektivität und die Behandlung
         
         data = mutter)                    # Datensatz

summary(m1)
## 
## Call:
## lm(formula = verbunden ~ affektiv + therapie, data = mutter)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -3.817 -0.717  0.029  0.753  2.952 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    9.475      0.310    30.6   <2e-16 ***
## affektiv      -0.940      0.070   -13.4   <2e-16 ***
## therapie       3.071      0.292    10.5   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.18 on 197 degrees of freedom
## Multiple R-squared:  0.479,  Adjusted R-squared:  0.474 
## F-statistic: 90.5 on 2 and 197 DF,  p-value: <2e-16

Wir können den Koeffizienten für die Interventionsvariable (therapie) als Schätzer für den LATE interpretieren. Unter der Annahme einer korrekten Modellspezifikation schätzen wir also einen kausalen Effekt von \(\hat{LATE}\) = 3,071 (\(SE\) = 0,292; \(p\) < ,001). Würde eine Mutter mit einer negativen Affektivität von 6 die Therapie wahrnehmen, wäre ihre empfundene Verbundenheit zum Kind um 3,071 Punkte höher als die empfundenene Verbundenheit, die sie gehabt hätte, wenn sie nicht an der Therapie teilgenommen hätte.

Die Regressionsgleichung zu unserem Modell ist folgende:

\(\hat{V} = 9,475 - 0,940 *A + 3,071 *T\),

wobei \(V\) subjektive Verbundenheit, \(A\) negative Affektivität und \(T\) die Therapie darstellt. Setzen wir eine negative Affektivität von \(6\) ein, bekommen wir je nach Interventionsgruppe die folgenden geschätzten Werte für die empfundene Verbundenheit am Cutoff:

\(\hat {V}_{T=1} = 9,475 - 0,940 *6 + 3,071 *1 = 6,910\)

\(\hat {V}_{T=0} = 9,475 - 0,940 *6 + 3,071 *0 = 3,830\)

Wir können die entsprechenden Regressionsgeraden und den LATE grafisch darstellen:

plot(verbunden ~ affektiv,           # Scatterplot mit dem Verbundenheitsgefühl in Abhängigkeit
                                     # von der negativen Affektivität postpartum
     
     data = mutter,                  # Datensatz
     
     xlab = "negative Affektivität", # Beschriftung der x-Achse
     
     ylab = "empf. Verbundenheit",   # Beschriftung der y-Achse
     
     pch = therapie + 1)             # Datenpunkte unterschiedlich für jede Therapiegruppen darstellen

# Legende hinzufügen
legend(x = 1, y = 3,                 # Position der Legende    
       
       legend = c("Kontrollgruppe", "Interventionsgruppe"),        # Beschriftung
       
       pch = 1:2)                    # Datenpunktdarstellung für jede Therapiegruppe

# Regressionsgerade Interventionsgruppe

clip(x1 = 6,                         # Nur für den Bereich zwischen 6
     x2 = 10,                        # und 10 auf der x-Achse (dem Cutoff)
     y1 = 0,                         # sowie 0
     y2 = 10)                        # und 10 auf der y-Achse:

abline(                              # Zeichne in den letzten Plot eine Linie
  a = coef(m1)[1] + coef(m1)[3],     # mit diesem Achsenabschnitt (Intercept + Effekt der Therapie),
  b = coef(m1)[2],                   # und dieser Steigung (Effekt der Kovariaten)
  lwd = 2)                           # in dieser Dicke.
 
# Regressionsgerade Kontrollgruppe

clip(x1 = 0,                         # Nur für den Bereich zwischen 0
     x2 = 6,                         # und 6 auf der x-Achse (dem Cutoff)
     y1 = 0,                         # sowie 0
     y2 = 10)                        # und 10 auf der y-Achse: 

abline(                              # Zeichne in den letzten Plot eine Linie
  a = coef(m1)[1],                   # mit dem Achsenabschnitt (nur Intercept),
  b = coef(m1)[2],                   # und dieser Steigung (Effekt der Kovariate)
  lwd = 2)                           # mit dieser Dicke.

# LATE

abline(v = 6,                        # Zeichne an der Cutoff-Stelle eine vertikale
       lty = 2,                      # gestrichelte Linie
       col = 'blue')                 # in blau.

lines(c(6, 6),                       # Zeichne eine vertikale Linie an der Cutoff-Stelle zwischen 
      c(3.83, 6.91),                 # y = 3,83 und y = 6,91
      lwd = 4,                       # dieser Dicke
      col = 'blue')                  # in blau.
*Abbildung 2*: lineare Regression der empfundenen Verbundenheit auf die negativen Affektivität und die Therapie. Die durchgezogene blaue Linie kennzeichnet den geschätzten LATE.

Abbildung 2: lineare Regression der empfundenen Verbundenheit auf die negativen Affektivität und die Therapie. Die durchgezogene blaue Linie kennzeichnet den geschätzten LATE.


6 Umgang mit Modellmisspezifikation

Wir können uns nicht sicher sein, dass die Annahme der Linearität wirklich korrekt ist und wir das obige Modell nicht fälschlicherweise misspezifiziert haben. Um uns gegen die Verschätzung des LATE durch eine mögliche Fehlspezifikation der funktionalen Form abzusichern, können wir entweder verschiedene funktionale Formen spezifizieren und testen oder den LATE nur anhand eines Teildatensatzes schätzen. Beide Vorgehensweisen werden im Folgenden demonstriert.


6.1 Spezifierung einer alternativen funktionalen Form

Beim Betrachten der Abbildung könnten wir vermuten, dass ein quadratischer Zusammenhang zwischen der negativen Affektivität und der empfundenen Verbundenheit besteht. Um diese Annahme zu testen, fügen wir einen zusätzlichen quadratischen Term in unsere Regressionsgleichung ein und spezifieren somit ein neues Modell:

m2 <- lm(verbunden ~ affektiv            # Regression
         + I(affektiv^2)                 # zusätzlicher quadratischer Term
         + therapie,                
         
         data = mutter)                  # Datensatz

summary(m2)
## 
## Call:
## lm(formula = verbunden ~ affektiv + I(affektiv^2) + therapie, 
##     data = mutter)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -3.314 -0.662 -0.006  0.680  2.893 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     7.3678     0.4132   17.83  < 2e-16 ***
## affektiv        0.1054     0.1639    0.64     0.52    
## I(affektiv^2)  -0.1191     0.0172   -6.91  6.7e-11 ***
## therapie        4.0619     0.2991   13.58  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.06 on 196 degrees of freedom
## Multiple R-squared:  0.581,  Adjusted R-squared:  0.574 
## F-statistic: 90.6 on 3 and 196 DF,  p-value: <2e-16

Der Kennwert für den quadratischen Term ist -0.1191 und signifikant von 0 verschieden. Entsprechend scheint ein linearer Zusammenhang wie in der vorherigen Analyse spezifiziert nicht gegeben zu sein. Der anhand dieses Modells geschätzte LATE beträgt \(\hat{LATE}\) = 4,062 (\(SE\) = 0,299; \(p\) < ,001). Der \(\hat{LATE}\) im quadratischen Modell unterscheidet sich entsprechend vom \(\hat{LATE}\) im linearen Modell. Wir schätzen also, dass wenn eine Mutter mit einer negativen Affektivität von 6 die Therapie wahrnehmen würde, die empfundene Verbundenheit zu ihrem Kind um 4,062 Punkte größer wäre als ihre empfundenene Verbundenheit, wenn sie nicht an der Therapie teilgenommen hätte.

Im folgenden sind die entsprechenden Regressionskurven und der LATE grafisch dargestellt:
*Abbildung 3*: quadratische Regression der empfundenen Verbundenheit nach der Geburt auf die negativen Affektivität vor der Geburt und die Therapie. Die durchgezogene blaue Linie kennzeichnet den geschätzten LATE.

Abbildung 3: quadratische Regression der empfundenen Verbundenheit nach der Geburt auf die negativen Affektivität vor der Geburt und die Therapie. Die durchgezogene blaue Linie kennzeichnet den geschätzten LATE.


6.2 Schätzung des LATE anhand eines Teildatensatzes

Eine weitere Möglichkeit um die Verschätzung im Falle einer falschen Modellspezifikation zu verringern, ist es, die Regressions-Diskontinuitäts-Analyse nur mit einem Teildatensatz (»Subset«) durchzuführen. Wir können die Bandbreite des Teildatensatzes selbst festlegen, oder eine optimale Bandbreite bestimmen.


6.2.1 Schätzung des LATE anhand eines Teildatensatzes mit selbstgewählter Bandbreite

Im Falle einer selbstgewählten Bandbreite h erstellen wir aus unserem vorliegenden Datensatz einen neuen Teildatensatz, der nur Personen mit einer negativen Affektivität enthält, die nahe des Cutoffs liegt. Wir können also beispielsweise festlegen, dass wir nur Personen mit einer Differenz von h = 1 zum Cutoff mit in die Analyse einbeziehen wollen.

mutter_t1 <- mutter[        # neuer Teildatensatz mit Personen
  mutter$affektiv >= 5      # mit Affektivität größer gleich fünf
  & mutter$affektiv <= 7,   # und kleiner gleich sieben
  ]

Danach spezifizieren wir eine Regression ausschließlich mit den Daten des Teildatensatzes.

m3 <- lm(verbunden ~ affektiv + therapie, 
         data = mutter_t1)

summary(m3)
## 
## Call:
## lm(formula = verbunden ~ affektiv + therapie, data = mutter_t1)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -3.490 -0.632 -0.019  0.688  2.614 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   14.404      2.612    5.51  6.7e-07 ***
## affektiv      -1.844      0.477   -3.86  0.00026 ***
## therapie       4.647      0.555    8.37  7.3e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.01 on 64 degrees of freedom
## Multiple R-squared:  0.669,  Adjusted R-squared:  0.659 
## F-statistic: 64.8 on 2 and 64 DF,  p-value: 4.11e-16

Der unter Verwendung dieses Teildatensatzes geschätzte LATE beträgt \(\hat{LATE}\) = 4,647 (\(SE\) = 0,555; \(p\) < ,001). Wir schätzen also, dass wenn eine Mutter mit einer negativen Affektivität von 6 die Therapie wahrnehmen würde, die empfundene Verbundenheit zu ihrem Kind um 4,647 Punkte größer wäre als ihre empfundenene Verbundenheit, wenn sie nicht an der Therapie teilgenommen hätte. Im Gegensatz zur Analyse mit dem gesamten Datensatz ist der so geschätzte LATE größer, die Schätzung jedoch ungenauer (der Standardfehler größer).

Die Regression und der geschätzte LATE lässt sich grafisch so darstellen:

*Abbildung 4*: lineare Regression der empfundenen Verbundenheit auf die negativen Affektivität und die Therapie für einen Teildatensatz mit selbst gewählter Bandbreite. Die durchgezogene blaue Linie kennzeichnet den geschätzten LATE.

Abbildung 4: lineare Regression der empfundenen Verbundenheit auf die negativen Affektivität und die Therapie für einen Teildatensatz mit selbst gewählter Bandbreite. Die durchgezogene blaue Linie kennzeichnet den geschätzten LATE.


6.2.2 Schätzung des LATE anhand eines Teildatensatzes mit optimaler Bandbreite

Alternativ können wir durch die folgenden Funktionen des Pakets rddtools die Regression auch mit einem Teildatensatz mit einer geschätzten optimalen Bandbreite berechnen lassen:

# Angeben der relevanten Daten für die Analyse
mutter_t2 <- rdd_data(y = mutter$verbunden,     # AV: Verbundenheitsgefühl der Mütter
                    x = mutter$affektiv,        # Kovariate: negative Affektivität
                    cutpoint = 6)               # Cutoff: negative Affektivität von 6

# Bestimmung der optimalen Bandbreite
bandwidth <- rdd_bw_ik(mutter_t2,               # Datensatz
                       kernel = "Normal")       # Schätzung optimaler Bandbreite mit Gaußkern 

# Schätzen der Regressionskoeffizienten
rdd_reg_np(rdd_object = mutter_t2,              # Dateninformationen
           bw = bandwidth,                      # gewählte Bandbreite
           slope = "same",                      # Gleiche Steigung in Interventions- und Kontrollgruppe
           inference = "lm")                    # Annahme eines linearen Zusammenhangs 
## ### RDD regression: nonparametric local linear###
##  Bandwidth:  1.35 
##  Number of obs: 94 (left: 65, right: 29)
## 
##  Coefficient:
##   Estimate Std. Error t value Pr(>|t|)    
## D    4.638      0.381    12.2   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Die geschätzte optimale Bandbreite beträgt 1,35, der neue Teildatensatz besteht mit dieser Bandbreite noch aus 94 Personen, von denen 29 zur Interventionsgruppe und 65 zur Kontrollgruppe gehören.

Der geschätzte LATE beträgt \(\hat{LATE}\) = 4,638 (\(SE\) = 0,381; \(p\) < ,001). Wir schätzen also, dass wenn eine Mutter mit einer negativen Affektivität von 6 die Therapie wahrnehmen würde, die empfundene Verbundenheit zu ihrem Kind um 4,638 Punkte größer wäre als ihre empfundenene Verbundenheit, wenn sie nicht an der Therapie teilgenommen hätte.

Die Regression und der geschätzte LATE lässt sich grafisch so darstellen:

*Abbildung 4*: lineare Regression der empfundenen Verbundenheit auf die negativen Affektivität und die Therapie für einen Teildatensatz mit geschätzter optimaler Bandbreite. Die durchgezogene blaue Linie kennzeichnet den geschätzten LATE.

Abbildung 4: lineare Regression der empfundenen Verbundenheit auf die negativen Affektivität und die Therapie für einen Teildatensatz mit geschätzter optimaler Bandbreite. Die durchgezogene blaue Linie kennzeichnet den geschätzten LATE.

Sowohl eine nichtlineare Spezifikation als auch die Schätzung anhand eines Teildatensatzes führen zu einer anderen (hier höheren) Effektschätzung im Vergleich zum linearen Modell für den gesamten Datensatz. Dies deutet darauf hin, dass die Annahme eines linearen Zusammenhangs im Ursprungsmodell nicht korrekt ist und eine der alternativen Spezifikationen für die Effektschätzung genutzt werden sollte. Es ist auch möglich alle dieser alternativen Ergebnisse zu berichten und somit die Unsicherheit bezüglich der Modellierung abzubilden.


7 Weiterführende Literatur

Informationen zur Verwendung und weiteren Analysemöglichkeiten mit RDDtools finden Sie hier: