Co to jest metoda syntetycznej kontroli?
Metoda syntetycznej kontroli (ang. synthetic control method) ocenia efekt interwencji, która objęła jedną jednostkę zagregowaną – kraj, region, miasto czy uczelnię. Zamiast jednej grupy kontrolnej buduje się „syntetyczną” jednostkę: średnią ważoną jednostek nieobjętych interwencją (puli dawców), dobraną tak, by jak najwierniej odtworzyła przebieg wyniku przed interwencją. Różnica między jednostką badaną a jej syntetycznym odpowiednikiem po interwencji to oszacowany efekt. Pomysł pochodzi od Abadiego i Gardeazabala (2003), którzy szacowali ekonomiczne koszty terroryzmu w Kraju Basków.
Wagi i wnioskowanie
Wagi są nieujemne i sumują się do 1, więc syntetyczna kontrola nie wychodzi poza zakres danych dawców i wiadomo, które jednostki ją tworzą. Abadie i in. (2010) zastosowali metodę do programu antytytoniowego w Kalifornii i zaproponowali wnioskowanie przez badania placebo: metodę powtarza się dla każdego dawcy, jakby to on był objęty interwencją, i sprawdza, czy luka dla jednostki badanej jest wyjątkowo duża. To logika testu permutacyjnego.
Na tle innych schematów
Metoda należy do schematów quasi-eksperymentalnych. W różnicy w różnicach (DiD) grupy porównawcze dostają równe wagi i trzeba założyć równoległe trendy; tu wagi dobiera się z danych. W przerwanym szeregu czasowym kontrfaktem jest przedłużony trend samej jednostki, a tu – przebieg jednostek porównawczych.
Przykład
W symulacji w R jedna jednostka i 15 dawców miało po 20 okresów przed programem i 10 po nim; prawdziwy efekt wynosił −3. Syntetyczną kontrolę utworzyły trzy jednostki (wagi .63, .23 i .15). Średni błąd dopasowania przed programem (RMSPE) wyniósł 0.70, a średnia luka po programie −2.46. W badaniu placebo stosunek błędu po i przed był największy dla jednostki badanej (1. miejsce na 16, p = 1/16 ≈ .06).
Jak opisać w pracy
Na co uważać
- Słabe dopasowanie przed interwencją. Jeśli syntetyczna jednostka nie odtwarza przeszłości, nie ufaj jej przyszłości. Abadie (2021) omawia, kiedy metoda daje wiarygodne oszacowania, a kiedy zawodzi.
- Skażona pula dawców. Usuń jednostki, które też przeszły podobną interwencję albo odczuły jej skutki.
- Krótki okres przed interwencją. Przy kilku punktach łatwo o dopasowanie przypadkowe.
Syntetyczna kontrola w bazowym R
Pakiet Synth nie jest potrzebny: kod dobiera wagi nieujemne sumujące się do 1 funkcją optim (parametryzacja softmax), minimalizując błąd przed interwencją, a potem powtarza procedurę dla każdego dawcy jako placebo.
Wagi, luka po interwencji i badanie placebo
R
set.seed(4481)
J <- 15; T0 <- 20; T1 <- 10; czas <- 1:(T0 + T1); pre <- czas <= T0
f1 <- cumsum(rnorm(T0 + T1, 0.3, 0.5)); f2 <- sin(czas / 4) # wspólne czynniki
lam <- cbind(runif(J + 1, 0.5, 1.5), runif(J + 1, -2, 2))
Y <- sapply(1:(J + 1), function(j) 50 + lam[j, 1] * f1 + lam[j, 2] * f2 + rnorm(T0 + T1, 0, 0.5))
Y[!pre, 1] <- Y[!pre, 1] - 3 # jednostka 1 objęta programem, efekt −3
synt <- function(j, dawcy) { # wagi ≥ 0 sumujące się do 1
y1 <- Y[, j]; Y0 <- Y[, dawcy]
strata <- function(a) { w <- exp(a) / sum(exp(a)); sum((y1[pre] - Y0[pre, ] %*% w)^2) }
a <- optim(rep(0, length(dawcy)), strata, method = "BFGS", control = list(maxit = 1000))$par
w <- exp(a) / sum(exp(a))
luka <- as.numeric(y1 - Y0 %*% w)
list(w = w, luka = luka, iloraz = sqrt(mean(luka[!pre]^2) / mean(luka[pre]^2)))
}
s <- synt(1, 2:(J + 1))
w <- setNames(round(s$w, 2), paste0("d", 1:J)); w[w >= 0.05]
c(rmspe_przed = round(sqrt(mean(s$luka[pre]^2)), 2), efekt_po = round(mean(s$luka[!pre]), 2))
ilorazy <- c(s$iloraz, sapply(2:(J + 1), function(j) synt(j, setdiff(2:(J + 1), j))$iloraz))
c(ranga = rank(-ilorazy)[1], jednostek = J + 1) # placebo w przestrzeniWynik w R
d2 d10 d12
0.15 0.63 0.23
rmspe_przed efekt_po
0.70 -2.46
ranga jednostek
1 16 Bibliografia oprogramowania
Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (bez dodatkowych pakietów). Wersja uproszczona: wagi dopasowano tylko do przebiegu wyniku, bez predyktorów.
- R: R Core Team. (2026). R: A language and environment for statistical computing (Version 4.5.3) [Computer software]. R Foundation for Statistical Computing. https://www.R-project.org/
Najczęstsze pytania
Ilu jednostek porównawczych potrzeba w metodzie syntetycznej kontroli?
Nie ma sztywnej liczby. Pula dawców musi zawierać jednostki podobne do badanej i nieobjęte interwencją, a liczba jednostek wyznacza najmniejsze możliwe p w badaniu placebo (np. 1/16).
Czym syntetyczna kontrola różni się od różnicy w różnicach?
DiD porównuje z równo ważoną grupą kontrolną i zakłada równoległe trendy. Syntetyczna kontrola dobiera wagi dawców z danych tak, by odtworzyć przebieg wyniku przed interwencją.
Czy metodę syntetycznej kontroli można policzyć bez pakietu Synth?
Tak, w prostej wersji wystarczy optymalizacja wag nieujemnych sumujących się do 1 w bazowym R. Pełne implementacje dodają predyktory i ważenie zmiennych.
Powiązane hasła
Poradniki, w których użyjesz tego pojęcia
Potrzebujesz wsparcia w analizie danych?
Wybierz ofertę dopasowaną do pracy dyplomowej albo profesjonalnego projektu naukowego.
Wyceń analizęOferta dla studentówBibliografia i dalsza literatura naukowa (APA 7)
- Abadie, A. (2021). Using synthetic controls: Feasibility, data requirements, and methodological aspects. Journal of Economic Literature, 59(2), 391–425. https://doi.org/10.1257/jel.20191450 ● Otwarty dostęp: pełny tekst
- Abadie, A., & Gardeazabal, J. (2003). The economic costs of conflict: A case study of the Basque Country. American Economic Review, 93(1), 113–132. https://doi.org/10.1257/000282803321455188
- Abadie, A., Diamond, A., & Hainmueller, J. (2010). Synthetic control methods for comparative case studies: Estimating the effect of California's tobacco control program. Journal of the American Statistical Association, 105(490), 493–505. https://doi.org/10.1198/jasa.2009.ap08746 ● Otwarty dostęp: pełny tekst
Cytowania BibTeX
@article{abadie2021using, author={Abadie, Alberto}, title={{Using synthetic controls: Feasibility, data requirements, and methodological aspects}}, journal={Journal of Economic Literature}, year={2021}, volume={59}, number={2}, pages={391--425}, doi={10.1257/jel.20191450}}@article{abadie2003economic, author={Abadie, Alberto and Gardeazabal, Javier}, title={{The economic costs of conflict: A case study of the Basque Country}}, journal={American Economic Review}, year={2003}, volume={93}, number={1}, pages={113--132}, doi={10.1257/000282803321455188}}@article{abadie2010synthetic, author={Abadie, Alberto and Diamond, Alexis and Hainmueller, Jens}, title={{Synthetic control methods for comparative case studies: Estimating the effect of California's tobacco control program}}, journal={Journal of the American Statistical Association}, year={2010}, volume={105}, number={490}, pages={493--505}, doi={10.1198/jasa.2009.ap08746}}