suppressMessages(library(Synth))
data(basque) # Abadie & Gardeazabal's data: 17 Spanish regions (region 17 = Basque Country), 1955-1997
dp <- dataprep(foo = basque, dependent = "gdpcap", unit.variable = "regionno",
unit.names.variable = "regionname", time.variable = "year",
treatment.identifier = 17, controls.identifier = c(2:16, 18), # region 1 is Spain as a whole
predictors = c("school.illit", "school.prim", "school.med", "school.high", "school.post.high", "invest"),
predictors.op = "mean", time.predictors.prior = 1964:1969,
special.predictors = list(list("gdpcap", 1960:1969, "mean"), list("sec.agriculture", seq(1961, 1969, 2), "mean"),
list("sec.energy", seq(1961, 1969, 2), "mean"), list("sec.industry", seq(1961, 1969, 2), "mean"),
list("sec.construction", seq(1961, 1969, 2), "mean"), list("sec.services.venta", seq(1961, 1969, 2), "mean"),
list("sec.services.nonventa", seq(1961, 1969, 2), "mean"), list("popdens", 1969, "mean")),
time.optimize.ssr = 1960:1969, time.plot = 1955:1997)
invisible(capture.output(so <- synth(dp)))
w <- so$solution.w[, 1]
round(setNames(w, basque$regionname[match(as.numeric(names(w)), basque$regionno)])[w > 0.01], 3)