cTE - Matlab Tool for computing the Corrected Transfer Entropy

This tool implements an approach for the estimation of the well known Transfer Entropy [Schreiber, PRL 2000], in its fully multivariate implementation, based on uniform quantization of the available multivaraiate dataset and utilization of a non-uniform embedding approach for reconstruction of the past system states. The approach is based on recognizing that TE can be interpreted as the difference between two conditional entropy (CE) terms, and builds on an efficient CE estimator that compensates for the bias occurring for high dimensional conditioning vectors and follows a sequential embedding procedure whereby the conditioning vectors are formed progressively according to a criterion for CE minimization [1]. Moreover, the tool implements a correction for instantaneous causality effects [2]. For testing the tool, two scripts are provided which implement the estimation of TE for a simulation of nonlinear time series [1] and an example of cardiac, vascular and respiratory variability data [3].


The cTE Matlab tool is based on the papers:

[1] L Faes, G Nollo, A Porta: 'Information-based detection of nonlinear Granger causality in multivariate processes via a nonuniform embedding technique', Phys Rev E; 2011; 83(5 Pt 1):051112.

[2] L Faes, G Nollo, A Porta: 'Compensated transfer entropy as a tool for reliably estimating information transfer in physiological time series', Entropy; special issue on “Transfer Entropy”, 2013; 15(1):198-219.
[3] L Faes, G Nollo, A Porta: 'Information domain approach to the investigation of cardio-vascular, cardio-pulmonary and vasculo-pulmonary causal couplings', Front Physiol, Special Issue “Engineering Approaches to Study Cardiovascular Physiology: Modeling, Estimation, and Signal Processing”, 2011; 2:80.


Zip file with all scripts and functions: cTE.zip

DISCLAIMER OF WARRANTIES AND LIMITATION OF LIABILITY The code is supplied as is and all use is at your own risk. The authors disclaim all warranties of any kind, either express or implied, as to the softwares, including, but not limited to, implied warranties of fitness for a particular purpose, merchantability or non - infringement of proprietary rights. Neither this agreement nor any documentation furnished under it is intended to express or imply any warranty that the operation of the software will be error - free. Under no circumstances shall the authors of the softwares provided here be liable to any user for direct, indirect, incidental, consequential, special, or exemplary damages, arising from the software, or user' s use or misuse of the softwares. Such limitation of liability shall apply whether the damages arise from the use or misuse of the data provided or errors of the software.

To test the tool, run the script example_simuNL.m , which implements the computation of the corrected TE on two coupled logistic systems (Eq. (11) in Ref. [1]), or the script example_cardio.m, which implements the corrected TE on heart period, systolic arterial pressure and respiration variability data measured from a subject lying in the supine position and in the upright position after head-up tilt (example  from Ref. [3]).