Package: coresynth 0.2.0

Yosuke Abe

coresynth: Fast and Unified Synthetic Control Methods

A unified 'Formula' interface to the Synthetic Control Method (SCM) and related panel-data causal inference estimators: Synthetic Difference-in-Differences (SDID), Generalized Synthetic Control (GSC), Matrix Completion (MC), Time-Aware Synthetic Control (TASC), and Synthetic Interventions (SI), together with an experimental-design variant. Computational bottlenecks (quadratic programming, singular value decomposition, and Kalman filtering) are implemented in 'C++' via 'RcppArmadillo'. Methods are described in Abadie, Diamond and Hainmueller (2010) <doi:10.1198/jasa.2009.ap08746>, Arkhangelsky, Athey, Hirshberg, Imbens and Wager (2021) <doi:10.1257/aer.20190159>, Xu (2017) <doi:10.1017/pan.2016.2>, Athey, Bayati, Doudchenko, Imbens and Khosravi (2021) <doi:10.1080/01621459.2021.1891924>, and Agarwal, Shah and Shen (2025) <doi:10.1287/opre.2025.1590>.

Authors:Yosuke Abe [aut, cre]

coresynth_0.2.0.tar.gz
coresynth_0.2.0.tar.gz(r-4.7-arm64)coresynth_0.2.0.tar.gz(r-4.7-x86_64)coresynth_0.2.0.tar.gz(r-4.6-arm64)coresynth_0.2.0.tar.gz(r-4.6-x86_64)
coresynth_0.2.0.tgz(r-4.6-emscripten)
manual.pdf |manual.html
card.svg |card.png
coresynth/json (API)
NEWS

# Install 'coresynth' in R:
install.packages('coresynth', repos = c('https://cran.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/yo5uke/coresynth/issues

Pkgdown/docs site:https://yo5uke.com

Uses libs:
  • openblas– Optimized BLAS
  • c++– GNU Standard C++ Library v3
  • openmp– GCC OpenMP (GOMP) support library

On CRAN:

Conda:

openblascppopenmp

2.70 score 7 scripts 23 exports 35 dependencies

Last updated from:07bc3137ae. Checks:6 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-arm64OK184
linux-devel-x86_64OK216
source / vignettesOK248
linux-release-arm64OK195
linux-release-x86_64OK183
wasm-releaseOK151

Exports:augment_scmconformal_inferenceexport_jsongsc_bootgsc_ife_cppgsc_inferencekalman_smoother_cppmspe_ratio_pvalpredscm_designscm_fitscm_inner_weights_cppscm_placebo_cppscm_weights_cppsdid_estimate_cppsdid_inferencesdid_placebo_cppsdid_time_weights_cppsdid_unit_weights_cppsi_inferencesi_pcr_cppsoft_impute_cpptensor_unfold_cpp

Dependencies:backportsbroomclicpp11dplyrfarverFormulagenericsggplot2gluegtableisobandjsonlitelabelinglifecyclemagrittrpillarpkgconfigpurrrR6RColorBrewerRcppRcppArmadillorlangS7scalesstringistringrtibbletidyrtidyselectutf8vctrsviridisLitewithr

Get started with coresynth

Rendered fromcoresynth.Rmdusingknitr::rmarkdownon Jun 12 2026.

Last update: 2026-06-12
Started: 2026-06-12

Readme and manuals

Help Manual

Help pageTopics
Augmented Synthetic Control Method (Ridge ASCM)augment_scm
Conformal Inference for Synthetic Control Estimatorsconformal_inference
Export coresynth Results to JSONexport_json
Glance at an inference resultglance.coresynth_inference
Parametric Bootstrap Inference for GSC (Xu 2017 §3)gsc_boot
Fast Interactive Fixed Effects (IFE) for Generalized Synthetic Controlgsc_ife_cpp
Non-parametric Inference for GSC (Xu 2017)gsc_inference
Kalman Filter and RTS Smoother (TASC)kalman_smoother_cpp
Permutation Inference via MSPE Ratio for SCMmspe_ratio_pval
Plot a coresynth modelplot.coresynth
Plot an scm_design objectplot.scm_design
Predictor Specification for SCMpred
Experimental Synthetic Control Designscm_design
Fit a Synthetic Control Method Modelscm_fit
SCM Inner Weights (QP Given V)scm_inner_weights_cpp
Fast Leave-One-Out Placebo Test for SCM (Abadie et al. 2010)scm_placebo_cpp
SCM Outer Weights (Joint Optimization of W and V)scm_weights_cpp
Calculate SDID Estimate (tau_sdid)sdid_estimate_cpp
Inference for Synthetic Difference-in-Differencessdid_inference
Fast Placebo Test for SDIDsdid_placebo_cpp
Calculate SDID Time Weights (lambda)sdid_time_weights_cpp
Calculate SDID Unit Weights (omega)sdid_unit_weights_cpp
Non-parametric Inference for SI (Agarwal et al. 2025)si_inference
SI-PCR: Synthetic Interventions via Principal Component Regressionsi_pcr_cpp
Fast Matrix Completion using Soft-Impute Algorithmsoft_impute_cpp
Tensor Unfolding (Matricization) for Synthetic Interventionstensor_unfold_cpp
Tidy an inference resulttidy.coresynth_inference