0

I am using the Synth package in R to run synthetic control (https://cran.r-project.org/web/packages/Synth/Synth.pdf). I would like to obtain weights, which are not restricted to sum to 1. Does anybody know how to achieve this?

1 Answers1

1

augsynth is probably your best bet!

Here is an example that fits the donors and has negative weights, from this vignette.

library(magrittr)
library(dplyr)
library(augsynth)
data(kansas)
kansas %>% 
  select(year, qtr, year_qtr, state, treated, gdp, lngdpcapita) %>% 
  filter(state == "Kansas" & year_qtr >= 2012 & year_qtr < 2013)
syn <- augsynth(lngdpcapita ~ treated, fips, year_qtr, kansas,
                progfunc = "Ridge", scm = T)
print(syn$weights)

In the output you'll see that some of the weights are negative:

> print(syn$weights)
            [,1]
1  -0.0017595899
2   0.0710153931
4  -0.0002083812

I am not an author of or contributor to augsynth.

braces
  • 570
  • 3
  • 8