Empirical Dynamic Modeling Stata Package
Package Description
Empirical Dynamic Modeling (EDM) is a way to perform causal analysis on time series data.
The edm
Stata package implements a series of EDM tools, including the convergent cross-mapping algorithm.
Key features of the package:
- powered by a fast multi-threaded C++ backend,
- able to process panel data, a.k.a. multispatial EDM,
- able to handle missing data using new
dt
algorithms or by dropping points, - factor variables can be added to the analysis,
- multiple distance functions available (Euclidean, Mean Absolute Error, Wasserstein),
- GPU acceleration available.
Installation
To install the stable version directly through Stata:
To install the latest development version, first install the stable version from SSC then inside Stata run:
The source code for the package is available on Github.
R & Python packages
We are currently creating the fastEDM R package and the fastEDM Python package which are direct ports of this Stata package to R & Python. As all the packages share the same underlying C++ code, their behaviour will be identical.
Other Resources
This site serves as the primary source of documentation for the package, though there is also:
- our Stata Journal paper which explains the package and the overall causal framework, and
- Jinjing's QMNET seminar on the package, the recording is on YouTube and the slides are here.
- Patrick's short presentation on the EDM packages to the Time Series and Forecasting Symposium 2022:
Authors
- Jinjing Li (author),
- Michael Zyphur (author),
- Patrick Laub (author, maintainer),
- Edoardo Tescari (contributor),
- Simon Mutch (contributor),
- George Sugihara (originator)
Citation
Jinjing Li, Michael J. Zyphur, George Sugihara, Patrick J. Laub (2021), Beyond Linearity, Stability, and Equilibrium: The edm Package for Empirical Dynamic Modeling and Convergent Cross Mapping in Stata, Stata Journal, 21(1), pp. 220-258
@article{edm-stata,
title={Beyond linearity, stability, and equilibrium: The edm package for empirical dynamic modeling and convergent cross-mapping in {S}tata},
author={Li, Jinjing and Zyphur, Michael J and Sugihara, George and Laub, Patrick J},
journal={The Stata Journal},
volume={21},
number={1},
pages={220--258},
year={2021},
}