Skip to content
/ PyIF Public

An open source implementation to compute bi-variate Transfer Entropy.

License

Notifications You must be signed in to change notification settings

lcdm-uiuc/PyIF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PyIF

An open source implementation to compute bi-variate Transfer Entropy.

Then from PyIF import te_compute to import the needed functions. Then all that is needed then is to call the te_compute function.

Installation

To install PyIF using pip run the following command:

pip install PyIF

To install a the development release of PyIF run the following command:

pip install -e .

Example

from PyIF import te_compute as te
import numpy as np
rand = np.random.RandomState(seed=23)

X_1000 = rand.randn(1000, 1).flatten()
Y_1000 = rand.randn(1000, 1).flatten()

TE = te.te_compute(X_1000, Y_1000, k=1, embedding=1, safetyCheck=True, GPU=False)

print(TE)

Arguments

PyIF has 2 required arguments X and Y which should be numpy arrays with dimensions of N x 1. The following arguments are optional:

  • k: controls the number of neighbors used in KD-tree queries
  • embedding: controls how many lagged periods are used to estimate transfer entropy
  • GPU: a boolean argument that indicates if CUDA compatible GPUs should be used to estimate transfer entropy instead of your computer's CPUs.
  • safetyCheck: a boolean argument can be used to check for duplicates rows in your dataset.

How to Cite PyIF

K. M. Ikegwu, J. Trauger, J. McMullin and R. J. Brunner, "PyIF: A Fast and Light Weight Implementation to Estimate Bivariate Transfer Entropy for Big Data," 2020 SoutheastCon, Raleigh, NC, USA, 2020, pp. 1-6, doi: 10.1109/SoutheastCon44009.2020.9249650.

About

An open source implementation to compute bi-variate Transfer Entropy.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages