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?
Asked
Active
Viewed 53 times
1 Answers
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
-
affiliation? [/help/promotion](/help/promotion) – starball Jul 19 '23 at 23:29
-
1@starball I am not an author of or contributor to augsynth – braces Jul 20 '23 at 03:55
-
Ok I've done that! :) Is there a policy that every time you link to a package you didn't make you should say that you were _not_ the maker of the package? – braces Jul 20 '23 at 03:59