23rd London Stata Users Group Meeting 7-8 September 2017 Cass Business School, London, UK Nonparametric Synthetic Control Method for program evaluation: Model and Stata implementation Giovanni Cerulli CNR-IRCrES, National Research Council of Italy Research Institute on Sustainable Economic Growth 1
The Synthetic Control Method (SCM) In some cases, treatment and potential control groups do not follow parallel trends . Standard DID method would lead to biased estimates. The basic idea behind synthetic controls is that a combination of units often provides a better comparison for the unit exposed to the intervention than any single unit alone. Abadie and Gardeazabal (2003) pioneered a synthetic control method when estimating the effects of the terrorist conflict in the Basque Country using other Spanish regions as a comparison group . They want to evaluate whether Terrorism in the Basque Country had a negative effect on growth. They cannot use a standard DID method because none of the other Spanish regions followed the same time trend as the Basque Country. They therefore take a weighted average of other Spanish regions as a synthetic control group. 2
METHOD They have J available control regions (i.e., the 16 Spanish regions other than the Basque Country). They want to assign weights ω = ( ω 1 , ..., ω J ) ’ – which is a ( J x 1) vector – to each region: J 0 with 1 j j 1 j The weights are chosen so that the synthetic Basque country most closely resembles the actual one before terrorism. 3
Let x 1 be a ( K x 1) vector of pre-terrorism economic growth predictors in the Basque Country. Let X 0 be a ( K x J ) matrix which contains the values of the same variables for the J possible control regions. Let V be a diagonal matrix with non-negative components reflecting the relative importance of the different growth predictors. The vector of weights ω * is then chosen to minimize : D( ω ) = ( x 1 – X 0 ω ) ’ V ( x 1 – X 0 ω ) They choose the matrix V such that the real per capita GDP path for the Basque Country during the 1960s (pre terrorism) is best reproduced by the resulting synthetic Basque Country. 4
Alternatively, they could have just chosen the weights to reproduce only the pre- terrorism growth path for the Basque country . In that case, the vector of weights ω * is then chosen to minimize : G( ω ) = ( z 1 – Z 0 ω ) ’ ( z 1 – Z 0 ω ) where: z 1 is a (10 x 1) vector of pre-terrorism (1960-1969) GDP values for the Basque Country Z 0 is a (10 x J ) matrix of pre-terrorism (1960-1969) GDP values for the J potential control regions. 5
Constructing the counterfactual using the weights y 1 is a ( T x 1) vector whose elements are the values of real per capita GDP values for T years in the Basque country. y 0 is a ( T x J ) matrix whose elements are the values of real per capital GDP values for T years in the control regions. They then constructed the counterfactual GDP pattern (i.e. in the absence of terrorism) as: ω * * = y y 1 0 1 J 1 T T J 6
Growth in the Basque Country with and without terrorism 7
Nonparametric Synthetic Control Methods (NPSCM) I propose an extension to the previous approach. The idea is that of computing the weights using a kernel-vector-distance approach. Given a certain bandwidth , this method allows to estimate a matrix of weights proportional to the distance between the treated unit and all the rest of untreated units. Therefore, instead of relying on one single vector of weights common to all the years, we get a vector of weights for each year. 8
An instructional example of the NSCM Suppose the treated country is UK, and treatment starts at 1973. Assume that the pre-treatment period is {1970, 1971, 1972}, and the post-treatment period is {1973, 1974, 1975}. Three countries used as controls: FRA, ITA, and GER. We have an available set of M covariates: x = { x 1 , x 1, … , x M } for each country. We define a distance metric based on x between each pair of countries in each year. For instance: with only one covariate x (i.e. M =1), the distance between – let’s say – UK and ITA in terms of x in 1970 may be: ( , ) | | d UK ITA x x 1970 1970, 1970, UK ITA 9
Given such distance definition , the pre-treatment weight for ITA will be: | | x x UK 1970, 1970, UK ITA ( ) h K 1970, ITA h where K (·) is one specific kernel function, and h is the bandwidth chosen by the analyst. The Kernel function defines a weighting scheme penalizing countries that are far away from UK and giving more relevance to countries closer to UK. Important : closeness is measured in terms of a pre-defined x -distance such as the Mahalanobis, Euclidean (L2), Modular, etc. 10
Understanding kernel distance weighting 11
Based on the vector-distance over the covariates: x = { x 1 , x 1, … , x M }, we can derive the matrix of weights W , whose generic element is: | | x x , , UK t s t s ( ) t s h K , h In the previous example, we have: 1970 1971 1972 UK UK UK FRA 11 12 13 W UK UK UK ITA 21 22 23 UK UK UK GER 31 32 33 12
Now, we define the matrix of data Y as follows, where y is the target variable: FRA ITA GER We define the unit weight as an average over the years: 1970 y y y 11 12 13 1971 y y y 21 22 23 1972 Y y y y 31 32 33 1973 y y y 41 42 43 1974 y y y 51 52 53 1975 y y y 61 62 63 We also define an augmented weighting matrix we call W * : 13
Once computed an imputation of the post-treatment weights, we can define a matrix C as follows: * = C Y W T T J T T J The diagonal of matrix C contains the “ UK synthetic time series Y 0 ” : 0,UK = diag( ) Y C This vector is an estimation of the unknown counterfactual behavior of UK. 14
The generic element of the diagonal of C is: * c y w t t 1 J 1 J In the previous example: UK FRA UK UK , , c y y y y 75 75, 75, 75, 75, FRA ITA GER ITA s s , , s ITA FRA GER UK GER Therefore, it is now clearer that c t is a weighted mean of controls’ y at time t , with weights provided by the previous procedure. 15
2 16
The Stata command npsynth 17
18
Application Aim : comparison between parametric and nonparametric approaches Policy : effects of adopting the Euro as national currency on exports Treated : Italy Outcome : Domestic Direct Value Added Exports Covariates: countries' distance, sum of GDP, common language, contiguity Goodness-of-fit : pre-intervention Root Mean Squared Prediction Error (RMSPE) for Italy Donors pool : 18 countries worldwide, experiencing no change in currency Years : 1995 - 2011 19
PARAMETRIC vs. NONPARAMETRIC: synth vs. npsynth . use Ita_exp_euro , clear . tsset reporter year . global xvars "ddva1 log_distw sum_rgdpna comlang contig" * PARAMETRIC . synth ddva1 $xvars , trunit(11) trperiod(2000) figure // ITA -------------------------------------------------------------------------------------------- Loss: Root Mean Squared Prediction Error -------------------------------------------------------------------------------------------- RMSPE | .0079342 --------------------- Unit Weights: ----------------------- Co_No | Unit_Weight ----------+------------ AUS | 0 BRA | 0 Predictor Balance: CAN | 0 ------------------------------------------------------ CHN | 0 | Treated Synthetic CZE | 0 -------------------------------+---------------------- DNK | 0 ddva1 | .6587541 .6587987 GBR | .122 log_distw | 7.708661 7.839853 HUN | 0 sum_rgdpna | 27.20794 26.33796 IDN | 0 comlang | 0 .0234725 IND | 0 contig | .0824561 .088393 JPN | .18 ------------------------------------------------------ KOR | 0 MEX | 0 POL | .599 ROM | 0 SWE | .099 TUR | 0 USA | 0 ----------------------- 20
Parametric model Treated and synthetic pattern of the outcome variable DDVA. 21
* NON-PARAMETRIC . npsynth ddva1 $xvars , panel_var(reporter) time_var(year) t0(2000) /// trunit(11) bandw(0.4) kern(triangular) gr1 gr2 gr3 /// save_gr1(gr1) save_gr2(gr2) save_gr3(gr3) /// gr_y_name("Domestic Direct Value Added Export (DDVA)") gr_tick(5) Root Mean Squared Prediction Error (RMSPE) ------------------------------------------- RMSPE = .01 ------------------------------------------- AVERAGE UNIT WEIGHTS ------------------------------------------- ------------------------------------------- UNIT | WEIGHT ------------------------------------------- AUS | 0 BRA | 0 CAN | 0 CHN | .3569087 CZE | .1244664 DNK | 0 GBR | .0133546 HUN | 0 IDN | .035076 IND | 0 JPN | .1021579 KOR | 0 MEX | .0083542 POL | .0563253 ROM | .0733575 SWE | .0837784 TUR | .1410372 USA | .0051846 ------------------------------------------- 22
Recommend
More recommend