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. Introduction and documentation are are avilable online, or in the package API docs.

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 MacOS, Linux and Windows platforms are supported with prebuilt binary distributions installed from PyPI pyEDM using the Python pip module.

Command line using the Python pip module: 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 can build the cppEDM library on their machine, then install the Python package using pip. On OSX and Linux this requires g++. On Windows, mingw and 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 LAPACK library is required to build cppEDM.

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. We do not have resources to maintain windows build support. These suggestions may be useful.
  2. Requires mingw installation.
  3. Requires gfortran libraries.
  4. Download pyEDM: git clone https://github.com/SugiharaLab/pyEDM
  5. Build cppEDM library: cd pyEDM\cppEDM\src; make
  6. Adjust paths to find gfortran and openblas libraries (pyEDM/pyEDM/etc/windows/libopenblas.a). You may need to rename libEDM.a to EDM.lib, and openblas.a to openblas.lib.
  7. Build and install package in pyEDM\: 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-1.8.0.0-cp38-cp38-win_amd64.whl (4.7 MB view details)

Uploaded CPython 3.8Windows x86-64

pyEDM-1.8.0.0-cp38-cp38-manylinux2010_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ x86-64

pyEDM-1.8.0.0-cp38-cp38-manylinux2010_i686.whl (4.8 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ i686

pyEDM-1.8.0.0-cp38-cp38-macosx_10_14_x86_64.whl (372.6 kB view details)

Uploaded CPython 3.8macOS 10.14+ x86-64

pyEDM-1.8.0.0-cp37-cp37m-win_amd64.whl (4.7 MB view details)

Uploaded CPython 3.7mWindows x86-64

pyEDM-1.8.0.0-cp37-cp37m-manylinux2010_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.12+ x86-64

pyEDM-1.8.0.0-cp37-cp37m-manylinux2010_i686.whl (4.9 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.12+ i686

pyEDM-1.8.0.0-cp37-cp37m-macosx_10_14_x86_64.whl (369.6 kB view details)

Uploaded CPython 3.7mmacOS 10.14+ x86-64

pyEDM-1.8.0.0-cp36-cp36m-win_amd64.whl (4.7 MB view details)

Uploaded CPython 3.6mWindows x86-64

pyEDM-1.8.0.0-cp36-cp36m-manylinux2010_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ x86-64

pyEDM-1.8.0.0-cp36-cp36m-manylinux2010_i686.whl (4.9 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ i686

pyEDM-1.8.0.0-cp36-cp36m-macosx_10_14_x86_64.whl (369.6 kB view details)

Uploaded CPython 3.6mmacOS 10.14+ x86-64

pyEDM-1.8.0.0-cp35-cp35m-macosx_10_14_x86_64.whl (369.6 kB view details)

Uploaded CPython 3.5mmacOS 10.14+ x86-64

File details

Details for the file pyEDM-1.8.0.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 d95175222f0e6910069aeb923d9bfa82230e85e027f69bb1d6d7b94402016190
MD5 4f4be9265636368e0e4af795b2a54666
BLAKE2b-256 3ee074e0e201a8b78a002594f78774bfc2bee969d5292f806236c536a9b1473a

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8e1f1f28e7a70ccea5296deae7a47c5610ca97c2623afd0ebbd6121f16eb5218
MD5 e55da32248137697425eb6c790d37c4e
BLAKE2b-256 83ec249204209714b28f35644006cf5658e586128934aee2abf385192faec415

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp38-cp38-manylinux2010_i686.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp38-cp38-manylinux2010_i686.whl
  • Upload date:
  • Size: 4.8 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp38-cp38-manylinux2010_i686.whl
Algorithm Hash digest
SHA256 6d32616a85fe25946e102de8f72f0d3cdcc107e6bd289e8852bbdc3b4898dec0
MD5 5580a699ef0cd3c96efec14976a33d3a
BLAKE2b-256 072992d9d969886d38719d5e130e6ba6ff3913f5ea5247942dd31b473aef1149

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 372.6 kB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 f673e407659d1b284190bbde1326e1acc4aca05fa2bc6ab66a3562b97ec2e1a8
MD5 87f53accbb069e8f33e7239f20e986d0
BLAKE2b-256 96b1fe9c30ff364626fed017e119847015f4721d47ff5fbfaf494586beac2e83

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyEDM-1.8.0.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 91e020840e6b5b712c2097a7c48a6115511cf01497b889a17415dbc257c93543
MD5 96f60dc889d0c1b05342726255855b3d
BLAKE2b-256 3ca97404d4cb57f06297bf7742cb5c90bf6f964ea20833e1ad09785e2c298e49

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 74d9a789bbbff0c1c908e5b903a7959baabe7c24095d7d73107df05651e575d6
MD5 366a43df6af90967a3112c9c24cf01aa
BLAKE2b-256 8b0ff43dc957a8420547901bda42a149d0069c5bc4f517e700abde0ef623cad4

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp37-cp37m-manylinux2010_i686.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp37-cp37m-manylinux2010_i686.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp37-cp37m-manylinux2010_i686.whl
Algorithm Hash digest
SHA256 3bf916648dc36fb3f5ecbe83e128b022f57a9b7c6d0b9ca7b03258893989b726
MD5 cb414a8ee783bcd364e4fe994500d1bf
BLAKE2b-256 fc2ced84f23538a475c8094e64fa293bf0fe6b7260cdb5c50395dfbe94775f42

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 369.6 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e94779fd5f5c8c4b3da36f63c00b45489cdc26c00c7c38c189867a995f72fcda
MD5 b4a1b290817994c25cd23eafabe0f028
BLAKE2b-256 c8a8991e278b9499fdb8286f89e0f81057f33343684ee78fb8013ce4d738d479

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyEDM-1.8.0.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 9b4a974d1b4e3c4bcd3e136332f3aeda529649934b9ba203e62f140b42ddd2ef
MD5 b7bc10c9fd25e96109bb77dd5c10e9f1
BLAKE2b-256 c3eb06f5c7e3964efbc6c2c7c62d41a0711042ce8fcf114b6abc7fbe6a44b1d3

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 e666573c47c78dde059b3cc1dbf87218aee2c52781bd5ed60bad4387dcf4eea5
MD5 8b09014e94f20befa045124bea7f4e9c
BLAKE2b-256 489f58dafe6e0af098ca7183131b577bc4fec10e4bdbac11870c60f410eeddef

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp36-cp36m-manylinux2010_i686.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp36-cp36m-manylinux2010_i686.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp36-cp36m-manylinux2010_i686.whl
Algorithm Hash digest
SHA256 c5cc504a975a913a47f74fe5d2bd8d236194ca9de62081c65f64566e9a93dc65
MD5 b47a3a141f4cbdfeb89338b275de1b10
BLAKE2b-256 b1f5ce36dae2d89edd62c112838a8a9bb837011707ad50a64457ff8006fa28f1

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp36-cp36m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 369.6 kB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 43bc55ec30418527cd757717e08396d6b3598182abac73cd1c39f584c1e9bcb7
MD5 4ecd6b24825c5bc74002994b75c3dae3
BLAKE2b-256 5530e84f2a008d45cd1d44062dd2a3f66ecc5c78440a107fb36a2ad11be1d35c

See more details on using hashes here.

File details

Details for the file pyEDM-1.8.0.0-cp35-cp35m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: pyEDM-1.8.0.0-cp35-cp35m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 369.6 kB
  • Tags: CPython 3.5m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/50.3.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for pyEDM-1.8.0.0-cp35-cp35m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 3fbe89ade9c53340409d088bf244094d67c3f9e37ca47786582695855ee96855
MD5 b314c1229b6d97f3285d115f73a2446e
BLAKE2b-256 3caa59c4a4fdb730f4b122ded2d430178475775dd839c13ec478d90ded2750aa

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