12 Synthetic Control
Synthetic Control Methoden (SCM) wurden in A. D. Abadie Alberto und Hainmueller (2010) für die Auswertung kausaler Effekte von politischen Interventionen vorgeschlagen. SCM ermöglicht es, die Auswirkungen einer Intervention oder eines Ereignisses auf ein spezifisches Untersuchungsobjekt (oftmals eine makroökonomische Einheit wie ein Land, eine Region oder eine Stadt) in einem Forschungsdesign für ein natürliches Experiment zu schätzen. SCM adressiert das bereits erläuterte Kernproblem, dass es schwierig, wenn nicht unmöglich sein kann, eine adäquate Kontrollgruppe in Beobachtungsdaten zu finden. Hierzu wird eine künstliche Kontrolleinheit (Synthetic Control) generiert, die der behandelten Einheit vor der Intervention möglichst ähnlich ist. Dieser synthetische Doppelgänger kann die unbeobachtbare Entwicklungen der behandelten Einheit nach der Intervention repräsentieren und so eine plausible Schätzung des kausalen Effekts der Intervention für die Post-Interventionsperioden gewährleisten.
12.1 Schätzung von Interventionseffekten mit SCM
Ähnlich wie bei manchen Matching-Methoden wird bei SCM die Ähnlichkeit der synthetischen Einheit mit der untersuchten Einheit durch eine gewichtete Kombination von Kontrolleinheiten basierend auf ihren Prä-Interventionsmerkmalen erreicht. Seien \(i = 1, 2, \ldots, N\) die Einheiten in der Stichprobe, wobei \(i = 1\) die behandelte Einheit und \(i = 2, \ldots, N\) potenziellen Kontrolleinheiten (auch Donor pool genannt) sind. Die Daten liegen für die Perioden \(t = 1, 2, \ldots, T\) vor, mit \(T_0\) dem Zeitpunkt direkt vor der Intervention und \(T_1, \ldots, T\) den Perioden nach der Intervention.
Für SCM bestimmen wir einen Vektor von Gewichten \(\mathbf{w}^* := (w_2^*, \ldots, w_k^*)^T\), der die Summe der quadrierten Differenzen zwischen den Ausprägungen von \(k\) Charakteristika der behandelten Einheit vor der Intervention, \(X_{1,\,m}^{\text{Pre}}\), \(m=1,\dots,k\), und der gewichteten Summe dieser Charakteristika für die Kontrolleinheiten, \(X_{i,\,m}^{\text{Pre}}\), minimiert:
\[\begin{align} \mathbf{w}^* := \arg\min_{\mathbf{w}} \sum_{m=1}^{k} v_m \left( X_{1,\,m}^{\text{Pre}} - \sum_{i=2}^{N} w_i X_{i,m}^{\text{Pre}} \right)^2,\label{eq:scopt} \end{align}\]unter der Nebenbedingung, dass \(\sum_{i=2}^{N} w_i = 1\) und \(w_i \geq 0\) für alle \(i\). Die \(v_m\) sind weitere Gewichte, welche die Relevanz der Variablen für die Vorhersage der Outcome-Variable der interessierenden Einheit, \(Y_{1,\,t}\), beinflussen. Diese Gewichte werden meist in einem weiteren Optimierungsverfahren (bspw. mit Cross-Validation) bestimmt (vgl. A. Abadie, Diamond, und Hainmueller 2014). Als Verlustfunktion hierbei wird meist der mittlere quadratische Fehler bei der Vorhersage von \(Y_{1,\,t}\) (MSPE)1 vor der Behandlung anhand der synthetischen Einheit verwendet,
1 MSPE = mean squared prediction error.
\[\begin{align} \sum_{t=1}^{T_0} \left( Y_{1,\,t} - \sum_{i=2}^N w_i(\mathbf{v}) Y_{i,\,t} \right)^2, \label{eq:scopt2} \end{align}\] mit \(\mathbf{v} := (v_1,\dots,v_k)'\).
Durch die Lösung des Optimierungsproblems \(\eqref{eq:scopt}\) unter Berücksichtigung von \(\eqref{eq:scopt2}\) erhalten wir die geschätzten Gewichte \(\widehat{w}_i\), welche den Einfluss der Kontrolleinheit \(i=2,\dots,N\)-ten bei der Zusammensetzung der Kontrollgruppe festlegen. Anhand der \(\widehat{w}_i\) wird die Outcome-Variable der synthetischen Kontrolleinheit konstruiert, welche als Referenz für die Schätzung des kausalen Effekts der Intervention dient. Die Outcome-Variable der synthetischen Kontrollgruppe für die Nach-Interventionsperiode kann formal ausgedrückt werden als
\[\begin{align} Y_{1,\,t}^{\text{Synth}} = \sum_{i=2}^{N} \widehat{w}_i Y_{i,\,t},\quad t > T_0,\label{eq:dgkonst} \end{align}\]wobei \(Y_{1,t}^{\text{Synth}}\) der Wert der Outcome-Variable \(Y\) für die synthetische Kontrollgruppe zum Zeitpunkt \(t\) und \(Y_{i,t}\) der entsprechende Wert des Outcomes für die \(i\)-te Kontrolleinheit ist. Bei SCM schätzen wir den kausalen Effekt \(\tau_t\) der Intervention zum Zeitpunkt \(t\) als die Differenz der Post-Interventionswerte von \(Y\) zwischen der behandelten Einheit und dem synthetischen Doppelgänger,
\[ \widehat{\tau}_t = Y_{1,\,t} - Y_{1,\,t}^{\text{synth}},\quad t > T_0. \]
Der mit SCM geschätzte Effekt ermittelt also für \(t > T_0\), wie sich die Intervention auf die behandelte Einheit ausgewirkt hat durch einen Vergleich mit der Situation, die eingetreten wäre, wenn die Einheit nicht behandelt worden wäre, repräsentiert durch die synthetische Kontrollgruppe.
Der SCM-Schätzer von A. D. Abadie Alberto und Hainmueller (2010) ist im R-Paket Synth
(Hainmueller, Diamond, und Abadie 2011) implementiert. Wir illustrieren die Methode nachfolgend mit einer empirischen Anwendung zu den Konsequenzen des Brexit auf die nachfolgende Entwicklung der britischen Volkswirtschaft.
12.2 Case Study: Ökonomische Kosten des Brexit
Born u. a. (2019) untersuchen die ökonomischen Kosten des Brexits mit einem kausalanalytischen Forschungsansatz. Der Kern der empirischen Analyse ist eine Kombination von quasi-experimenteller Identifikation und struktureller Zeitreihenanalyse. Hiermit können nicht nur die aggregierten Kosten des EU-Ausstiegs für Großbritannien zu quantifiziert, sondern auch die Kanäle identifiziert werden, durch die die erwartete wirtschaftliche Desintegration die britische Makroökonomie beeinflusst hat. Hierbei identifizieren Born u. a. (2019) einen Anstieg der wirtschaftspolitischen Unsicherheit und eine Abwärtskorrektur der Wachstumserwartungen als Haupttreiber für den Rückgang der Wirtschaftsleistung.
Der quasi-experimentelle Ansatz betrachtet das Brexit-Referendum als ein natürliches makroökonomisches Experiment und untersucht die Konsequenzen der wirtschaftlichen Desintegration für das Bruttoinlandsprodukt (BIP) im Nachfolgezeitraum mit SCM. Hierzu wird gemäß der in Kapitel 12.1 erläuterten Vorgehensweise ein syntetischer Doppelgänger für die britische Wirtschaft aus einem Donor Pool von 23 Volkswirtschaften konstruiert, und der Effekt des Referendums als Unterschied zwischen der tatsächlichen und synthetischen Trajektorien des BIP für Folgeperioden ermittelt. Die Analyse zeigt, dass das Brexit-Votum bis Ende 2018 zu einem BIP-Rückgang von etwa 1.7% bis 2.5% geführt hat.
Wie reproduzieren nun die wesentlichen Ergebnisse des SCM-Ansatzes der Studie mit R. Hierfür lesen zunächst den Datensatz brexit.csv
(hier verfügbar) in R ein. Dieser enthält vierteljährliche Beobachtungen von makroökonomischen Variablen für 24 Länder für den Zeitraum 1995-Q1–2021-Q4.
brexit
ist ein Datensatz mit einer Panel-Struktur. Die Zeit- und Entitätsvariablen sind Year
/quarter
und Country
/ID
. Beachte, dass die Variable Time
zusätzlich das Jahr und das Quartal als numerische Variable angibt.2
2 read_csv()
liest .csv
-Dateien als tibble
-Objekt ein. Für die nachfolgende Analyse mit dem R-Paket Synth
transformieren wir brexit
zu einem data.frame
.
Für die Schätzung der Gewichte \(w_i\) für die Konstruktion des UK-Doppelgängers werden die in gelisteten Charakteristika der Volkswirtschaften verwendet.
Variable | Definition |
---|---|
gdp |
Veränderung des BIP relativ zu 2016 |
ConGDP |
Anteil: Konsum/BIP (%) |
InvGDP |
Anteil: Investitionen/BIP (%) |
ExpGDP |
Anteil: Exporte/BIP (%) |
ImpGDP |
Anteil: Importe/BIP (%) |
EmpSha |
Anteil: Beschäftigte/Erwerbsbevölkerung (%) |
LPG |
Wachstum der Arbeitsproduktivität (%) |
brexit
– Variablen und Definitionen
Zur Berechnung von SCM mit dem R-Paket Synth
müssen die Daten zunächst mit der Funktion Synth::dataprep()
aufbereitet werden, siehe ?Synth::dataprep()
für weitere Details. Neben dem Datensatz (foo
) unter expliziter Nennung der Prädiktoren (predictors
) und der Outcome-Variable (dependent
) übergeben wir Variablen für die Identifikation von Einheiten (ID
) und Zeitpunkten (Time
), sowie Donor Pool (controls.identifier
) und behandelter Einheit (treatment.identifier
). Weiterhin werden die Vorbehandlungsperiode (time.predictors.prior
) sowie der Zeitraum über den die Regressor-Gewichte \(v_m\) bestimmt werden sollen (time.optimize.ssr
), festgelegt. Für letztere übergeben wir einen numerischen Vektor für sämtliche Zeitpunkte von 1995-Q1 bis zum Brexit-Referendum in 2016-Q2.
Um einen ersten Überblick über die Entwicklung der BIP im Datensatz zu gewinnen, vergleichen wir die Zeitreihen für Donor-Pool-Länder (grau) und Großbritannien (blau) mit ggplot
.
Die Grafik zeigt, dass das BIP von Großbritannien zwar auch nach dem Brexit-Referendum (gepunktete Linie) gewachsen ist, jedoch vergleichsweise schwach. Eine Analyse mit SCM kann statistische Evidenz für den mutmaßlich negativen Effekt des Referendums auf das Wachstum in den Folgeperioden liefern.
Wir laden nun das Paket Synth
und bereiten die Daten für die Analyse vor.
Anhand der vorbereiteten Daten dataprep_out
wird nun die Bestimmung der Gewichte mit Synth::synth()
durchgeführt.
Synth::synth()
gibt Informationen über den Optimierungsprozess und dessen Ergebnisse automatisch in der Konsole aus. Wir können diese Informationen mit Synth::synth.tab()
leicht tabellarisch zusammenfassen und mit gt::gt()
darstellen.
Für die tabellarische Darstellung mit gt::gt()
berücksichtigen wir lediglich Volkswirtschaften mit Gewicht > .0001.
Der synthetische UK-Doppelgänger kann nun gemäß der Vorschrift \(\eqref{eq:dgkonst}\) konstruiert werden. Wir erzeugen hierzu ein tibble
-Objekt mit den entsprechenden ID-Variablen.
Für die nachfolgenden Schritte der Analyse führen wir das beobachtete GDP für Großbritannien mit dem syntethischen GDP des Doppelgängers zusammen.
Für einen Vergleich von UK- und Doppelgänger-BIP folgen wir Born u. a. (2019) und berechnen die Differenz der BIP über den gesamten Zeitraum, die so genannte Doppelgänger-Gap.
Als ein Maß für die Unsicherheit bei der Schätzung des GDPs für den Doppelgänger berechnen Born u. a. (2019) die Standardabweichung der Doppelgänger-Gap für den Zeitraum vor dem Brexit-Referendum.
Wir nutzen nun ggplot2::ggplot()
, um den syntetischen Doppelgänger und das BIP für Großbritannien über den gesamten Zeitraum darzustellen. Für die Darstellung von Unsicherheit bei der Konstruktion des Doppelgängers unterlegen wir die Doppelgänger-Zeitreihe mit einer Schattierung in der Breite der geschätzten Standardabweichung sd_gap
für die Periode vor dem Referendum.
Die obige Grafik zeigt, dass die Entwicklung des synthetisches Doppelgänger über weite Teile der Vorperiode eine gute Übereinstimmung mit dem beobachtete BIP von Großbritannien aufweist, insbesondere für den Zeitraum unmittelbar vor dem Brexit-Referendum. Nach dem Referendum zeigt sich bereits nach wenigen Quartalen eine deutliche Abweichung zwischen der geschätzten und der beobachteten Trajektorie des BIP. Eine Beschränkung der in p_gdp
verwendeten Datenpunkte auf einen Bereich nahe des Referendums bestärkt diese Schlussfolgerung.
In der Abbildung ist eine ab Mitte 2017 außerhalb des Standardabweichungsbereichs verlaufende Divergenz der Zeitreihen zu erkennen. Diese stellen wir nachfolgend anhand der Doppelgänger-Gap mit ggplot2::ggplot()
dar.
Die in der Grafik gezeigte Doppelgänger-Gap stimmt gut mit dem von Born u. a. (2019) geschätzten verlorenen Wachstums des BIP relativ zu 2016 um bis zu 2.5% bis Ende des Jahres 2018 überein.
Als weiteres Maß für den Effekt des Referendums im Folgezeitraum können wir die mittlere Doppelgänger-Gap für sämtliche Beobachtungsperioden nach dem Brexit-Referendum schnell bestimmen.
12.2.1 Placebo-Tests: Grafische Inferenz
Auch für SCM sind Placebo-Tests ein hilfreiches Instrument zur Überprüfung der Gültigkeit von Studienergebnissen. Eine gründliche Placebo-Analyse kann festzustellen, ob der beobachtete Effekt tatsächlich auf die Intervention zurückzuführen ist und nicht auf unberücksichtigte (möglicherweise unbeobachtbare) Faktoren.
Ein Ansatz ist hierfür ist es, den synthetische-Doppelgänger für fiktive Interventionszeitpunkte vor dem tatsächlichen Behandlungszeitpunkt zu konstruieren, und die entsprechenden Trajektorien mit dem ursprünglichen Doppelgänger zu vergleichen. So kann die Validität der ursprünglichen Doppelgänger-Trajektorie im Hinblick auf mögliche anderweitige Ereignisse vor der Intervention geprüft werden: Doppelgänger-Trajektorien für fiktive, frühere Interventionen sollten sich nicht systematisch von der andhand von Daten bis zur tatsächlichen Intervention berechneten Trajektorie unterscheiden.
Wir definieren hierzu eine Funktion placebo()
, die einen syntethischen Doppelgänger des BIP Großbritanniens mit Gewichten auf Basis eines vorgegebenen Interventionszeitpunktes (treat
) zurückgibt. Abgesehen vom früheren Interventionszeitpunkt (und der damit einhergehenden verkleinerten Stichprobe) erfolgt die Berechnung der Gewichte mit derselben Spezifikation wie zuvor.
Wie in Born u. a. (2019) berechnen wir nun 12 Placebo-Doppelgänger des BIP von Großbritannien für fiktive Zeitpunkte eines Referendums über sämtliche Quartale im Zeitraum 2010-Q1 bis 2016-Q1. Dies ist komfortabel durch Iteration von placebo()
über diese Zeitpunkte mit purrr::map_dfr()
umsetzbar.3
3 Dieser Chunk kann aufgrund des Rechenaufwands nicht mit WebR ausgeführt werden. Das Objekt placebos_tbl
haben wir vorab berechnet und geladen.
# Iteration über fiktive frühere Referenden
placebos_tbl <- map_dfr(
.x = seq(2010, 2016, .25),
.f = \(x) placebo(x)
)
placebos_tbl
ist ein tibble
-Objekt im tidy-Format. Wir können die Placebo-Doppelgänger sowie den ursprünglich berechneten Doppelgänger und das tatsächliche BIP also ähnlich wie zuvor mit ggplot2
darstellen.
Beachte, dass position = position_jitter(height = .25)
eine zufällige, kleine Verschiebung (jitter) der grauen Trajektorien der Placebo-Doppelgänger für eine bessere Unterscheidbarkeit bewirkt. Wir erkennen, dass sich die Placebo-Pfade für fiktive frühere Referenden (grau) nicht systematisch vom ursprünglich berechneten synthetischen Doppelgänger (rot) unterscheiden. Insbesondere finden wir keinen Rückgang der synthetischen BIP relativ zum beobachteten BIP für Großbritannien vor dem Referendum. Deutliche Abweichungen vom tatsächlichen BIP ergeben sich erst jenseits der tatsächlichen Referendums. Diese Placebo-Analyse bekräftigt also die Validität der Konstruktion des “Benchmark-Doppelgängers” für die Periode bis 2016-Q2 und die Schätzung des kausalen Effekts des Referendums anhand der entsprechenden Doppelgänger-Gap.
Ein weiterer Placebo-Test in Born u. a. (2019) ist ein Vergleich der Doppelgänger-Gap Großbritanniens mit Doppelgänger-Gaps für fiktive Referenden in 2016-Q2 in Ländern mit wesentlichem Einfluss bei der Konstruktion des synthetischen Doppelgängers für Großbritannien: Die Schätzung des kausalen Effekts des Referendums auf das BIP in Großbritannien ist glaubhaftig, wenn lediglich die Doppelgänger-Gap für Großbritannien durch das Referendum beeinflusst wird, nicht aber die Doppelgänger-Gaps für Länder in der Kontrollgruppe.
Für diese grafische Placebo-Analyse modifizieren wir die Funktion placebo()
entsprechend. placebo_gap()
berechnet die Doppelgänger-Gap für das mit treat
identifizierte Land. Das if
-Statement zu Beginn stellt sicher, dass Großbritannien nicht als Kontroll-Einheit für die Placebo-Gaps verwendet wird.
Für die Berechnung der Placebo-Gaps iterieren wir placebo_gap()
über die Indizes der Volkswirtschaften die zur Konstruktion der syntetischen Kontrollgruppe für Großbritannien herangezogen werden.
Wie zuvor nutzen wir purrr::map_dfr()
für die iterative Anwendung von placebo_gap()
.4
4 Dieser Chunk kann aufgrund des Rechenaufwands zur Zeit nicht mit WebR ausgeführt werden. Das Objekt placebos_tbl
haben wir vorab berechnet und geladen.
# Placebo-Doppelgänger-Gaps berechnen
placebo_gaps_tbl <- map_dfr(
.x = donors_and_UK,
.f = \(x) placebo_gap(x)
)
Für die grafische Darstellung ergänzen wir die Variable Country
zur Unterscheidung der Doppelgänger-Gaps für Großbritannien und die Kontroll-Länder.
Um die Vergleichbarkeit der Doppelgänger-Gaps zu gewährleisten, standardisieren Born u. a. (2019) die Schätzungen der Gaps anhand der jeweiligen Mittelwerte für das Jahr 2015 und der Standardabweichungen im Zeitraum vor dem Brexit-Referendum. Wir berechnen diese Statistiken zunächst.
Mit dplyr::left_join()
führen wir diese Statistiken mit placebo_gaps_tbl
zusammen und berechnen die standardisierten Doppelgänger-Gaps.
Wir plotten die Placebo-Gap-Zeitreihen mit ggplot()
.
Die Grafik zeigt die standardisierten Placebo-Doppelgänger-Gaps für ein fiktives Referendum zum Zeitpunkt 2016-Q2 in den 5 Kontrollvolkswirtschaften, die für Konstruktion des BIP-Doppelgängers von Großbrittannien relevant sind (grau). Der Vergleich mit der standardisierten Doppelgänger-Gap für Großbritannien (blau). Der Verlauf der Placebo-Gaps zeigt an, dass keine Abweichungen mit negativem Trend von der Referenzlinie bei 0 (kein Unterschied zwischen beobachtetem und synthetischem BIP) nach dem Referendum vorliegen. Damit liefert die Grafik keine Hinweise auf einen Effekt fiktiver Interventionen in den Kontroll-Ländern. Für Großbritannien jedoch ist, ähnlich wie zuvor, ein negativer Trend nach dem Referendum deutlich erkennbar.
12.2.2 Statistische Inferenz
Die bisherigen Placebo-Tests liefern lediglich grafische Evidenz für die Signifikanz des negativen Effekts des Brexit-Referendums auf die Britische Volkswirtschaft. Methoden für statistische Inferenz für SCM sind Gegenstand aktueller Forschung. Born u. a. (2019) verwenden den End-Of-Sample Instability Test (\(S\)) von Andrews (2003). Dieses Verfahren kann für einen Test auf einen Strukturbruch gegen Ende einer Zeitreihe verwendet werden. In der vorliegende Studie wird der Test angewendet, um zu überprüfen, ob die Verteilung der Doppelgänger-Gap Großbritanniens für die letzten \(m\) Perioden nach dem Referendum signifikant verschieden ist von der Verteilung in den vorherigen Perioden.
Wir zeigen nachfolgend, wie diese Analyse in R mit der Funktion CPAT::Andrews.test()
aus dem Paket CPAT
durchgeführt werden kann. Wir testen zunächst auf eine signifikante Diskrepanz der Doppelgänger-Gap in Form eines Strukturbruchs ab 2017 und fassen die Ergebnisse tabellarisch mit broom::tidy()
und gt::gt()
zusammen.
Gem. des großen \(p\)-Werts kann die Nullhypothese (keine strukturelle Veränderung ab 2017) nicht abgelehnt werden. Wir führen den Test nun für sämtliche Zeitpunkte ab 2017 durch und plotten die \(p\)-Werte nebst gepunkteten roten Hilfslinien für die gängigen Signifikanzniveaus (10%, 5%, 1%).
Der Verlauf der \(p\)-Werte zeigt deutlich, dass es für Zeitpunkte jenseits von 2018-Q3 Evidenz für eine strukturelle Veränderung der Doppelgänger-Gap für Großbrittannien gibt. Diese Ergebnisse untermauern die Signifikanz der in Born u. a. (2019) mit SCM gefundenen negativen Effekte des Brexit-Votums auf die Britische Volkswirtschaft weiter.
12.3 Zusammenfassung
Synthetic Control Method (SCM) ermöglicht uns die Analyse kausaler Effekte von Interventionen oder Ereignissen in Situationen, in denen nicht-experimentelle Daten für nur eine einzelne behandelte Einheit vorliegen, und eine klassische Kontrollgruppe nicht unmittelbar verfügbar ist. Hierzu wird ein “synthetischer Doppelgänger” der interessierenden Einheit konstruiert. Der methodische Kern von SCM ist ein gewichtetes Optimierungsverfahren zur Erstellung der künstlichen Kontrolleinheit und die anschließende Schätzung des Behandlungseffekts durch einen Vergleich der tatsächlichen und synthetischen Entwicklung. Die Validierung der Schätzung erfolgt durch Placebo-Tests.
Der Ansatz eignet sich für verschiedene Anwendungsfelder in den Sozial- und Wirtschaftswissenschaften, etwa für die Analyse von Policy-Interventionen auf regionaler oder institutioneller Ebene, oder die Evaluation spezifischer Ereignisse, bei denen klassische Difference-in-Differences oder Matching-Ansätze nicht anwendbar sind. Die Anwendung von SCM in R mit dem Paket Synth
wurde anhand einer Fallstudie zu den ökonomischen Auswirkungen des Brexit-Referendums demonstriert.