Skip to main content

Python wrapper for cppEDM using pybind11

Project description

Empirical Dynamic Modeling (EDM)


This package provides a Python/Pandas DataFrame interface to the cppEDM library for EDM analysis. Documentation is available at pyEDM.

Functionality includes:

  • Simplex projection (Sugihara and May 1990)
  • Sequential Locally Weighted Global Linear Maps (S-map) (Sugihara 1994)
  • Multivariate embeddings (Dixon et. al. 1999)
  • Convergent cross mapping (Sugihara et. al. 2012)
  • Multiview embedding (Ye and Sugihara 2016)

Installation

Python Package Index (PyPI)

Certain Mac OSX and Windows platforms are supported with prebuilt binary distributions and can be installed using the Python pip module. The module is located at pypi.org/project/pyEDM.

Installation can be executed as: python -m pip install pyEDM

Manual Install

Unfortunately, we do not have the resources to provide pre-built binary distributions for all computer platforms. In this case the user is required to first build the cppEDM library on their machine, and then install the Python package using pip. On OSX and Linux this requires g++, on Windows, Microsoft Visual Studio Compiler (MSVC) which can be obtained from Build Tools for Visual Studio 2019. Only the Windows SDK is needed.

Note that the Eigen C++ Template Library is required to build cppEDM. It is assumed that the Eigen directory is available in the compiler INCLUDE path. If not, you can add the directory to the CFLAGS -I option in the makefile, appropriately define the INCLUDE environment variable, or, override the make command line with CFLAGS= to specify the location.

OSX and Linux

  1. Download pyEDM: git clone https://github.com/SugiharaLab/pyEDM
  2. Build cppEDM library: cd pyEDM/cppEDM/src; make
  3. Build and install package: cd ../..; python -m pip install . --user --trusted-host pypi.org

Windows

  1. Download pyEDM: git clone https://github.com/SugiharaLab/pyEDM
  2. Build cppEDM library: cd pyEDM\cppEDM\src; nmake /f makefile.windows
  3. Build and install package: cd ..\..; python -m pip install . --user --trusted-host pypi.org

Usage

Example usage at the python prompt:

>>> import pyEDM
>>> pyEDM.Examples()

References

Sugihara G. and May R. 1990. Nonlinear forecasting as a way of distinguishing chaos from measurement error in time series. Nature, 344:734–741.

Sugihara G. 1994. Nonlinear forecasting for the classification of natural time series. Philosophical Transactions: Physical Sciences and Engineering, 348 (1688) : 477–495.

Dixon, P. A., M. Milicich, and G. Sugihara, 1999. Episodic fluctuations in larval supply. Science 283:1528–1530.

Sugihara G., May R., Ye H., Hsieh C., Deyle E., Fogarty M., Munch S., 2012. Detecting Causality in Complex Ecosystems. Science 338:496-500.

Ye H., and G. Sugihara, 2016. Information leverage in interconnected ecosystems: Overcoming the curse of dimensionality. Science 353:922–925.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyEDM-0.1.8-cp37-cp37m-win_amd64.whl (504.0 kB view details)

Uploaded CPython 3.7mWindows x86-64

pyEDM-0.1.8-cp36-cp36m-win_amd64.whl (503.8 kB view details)

Uploaded CPython 3.6mWindows x86-64

pyEDM-0.1.8-cp35-cp35m-win_amd64.whl (503.9 kB view details)

Uploaded CPython 3.5mWindows x86-64

pyEDM-0.1.8-cp35-cp35m-macosx_10_13_x86_64.whl (540.1 kB view details)

Uploaded CPython 3.5mmacOS 10.13+ x86-64

pyEDM-0.1.8-cp34-cp34m-macosx_10_13_x86_64.whl (540.0 kB view details)

Uploaded CPython 3.4mmacOS 10.13+ x86-64

pyEDM-0.1.8-cp27-cp27m-macosx_10_13_x86_64.whl (541.2 kB view details)

Uploaded CPython 2.7mmacOS 10.13+ x86-64

File details

Details for the file pyEDM-0.1.8-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: pyEDM-0.1.8-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 504.0 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for pyEDM-0.1.8-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 1f34fdce694027fb731758e4c36ca704308cfeed2946d52f442a150e0ede5d91
MD5 0c00899a2605465cfdd556b236325919
BLAKE2b-256 9cd1793978c4e7353820fbd73ff34e9c7e777dbffff0bc21062b6a5caf4dc3b3

See more details on using hashes here.

File details

Details for the file pyEDM-0.1.8-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: pyEDM-0.1.8-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 503.8 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for pyEDM-0.1.8-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 0a0d97372eea9f52f6f10aa30182d5e1501bc3ec72d0f4c14299a36a8cd1e9be
MD5 83d5c90c40e8e047102fdb9125ad74c4
BLAKE2b-256 94327fb6a7449bc7653a61316fe4b79473052faf5c0d48b19afe8aff1b332fcf

See more details on using hashes here.

File details

Details for the file pyEDM-0.1.8-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: pyEDM-0.1.8-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 503.9 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for pyEDM-0.1.8-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 74617bec6c15058185dc66cfcd35afbcc1153740e7c31f2dbb65a08563b46219
MD5 f2a85a6d0aac75ae2bb9c53fc27e6ab2
BLAKE2b-256 d72ab91017622665b88d92dae0ebc0bb0e0320b25f1eaa654349dea5fe6e4100

See more details on using hashes here.

File details

Details for the file pyEDM-0.1.8-cp35-cp35m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: pyEDM-0.1.8-cp35-cp35m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 540.1 kB
  • Tags: CPython 3.5m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for pyEDM-0.1.8-cp35-cp35m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 0b1e556d1d434038ecef4ac417f52da3b80a1cb248576ea8f9659ba7846e044b
MD5 9a8c557e40b9a22ba06581c053ba8b80
BLAKE2b-256 1df72bc8c8c26c8cb32272b1b8fadb25201373889656c994583f94226cc32ac4

See more details on using hashes here.

File details

Details for the file pyEDM-0.1.8-cp34-cp34m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: pyEDM-0.1.8-cp34-cp34m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 540.0 kB
  • Tags: CPython 3.4m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for pyEDM-0.1.8-cp34-cp34m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 259359813344087fe74278f7c819221a9304acf3ffb5232f3497546a5b15f53c
MD5 cfa1803773c13443add2ff56ea9c6feb
BLAKE2b-256 c1b406020a6eb4169d310bc70ec82ada2ee4c72678d6c6e92c7d57e909524e81

See more details on using hashes here.

File details

Details for the file pyEDM-0.1.8-cp27-cp27m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: pyEDM-0.1.8-cp27-cp27m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 541.2 kB
  • Tags: CPython 2.7m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for pyEDM-0.1.8-cp27-cp27m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 675a6739737444df671bfd871867cbb167acc69e4d3bf1819a04fcbdc04703f9
MD5 be9a578488bb0688eafb5252ed8ce746
BLAKE2b-256 12142d5b4458ac3c2cec0822091b0e783c5dc6532b072faf2c5e0ad63643472b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page