From a95604f79e381e8d95740a35453fdaadf35c5260 Mon Sep 17 00:00:00 2001 From: Patricia Wollstadt Date: Mon, 28 Feb 2022 18:03:37 +0100 Subject: [PATCH] Update sphinx documentation --- docs/conf.py | 4 +- docs/doctrees/environment.pickle | Bin 720989 -> 837363 bytes docs/doctrees/idtxl.doctree | Bin 1459388 -> 1798393 bytes docs/doctrees/idtxl_data_class.doctree | Bin 165589 -> 170574 bytes docs/doctrees/idtxl_estimators.doctree | Bin 381072 -> 392700 bytes docs/doctrees/idtxl_helper.doctree | Bin 156288 -> 160025 bytes .../doctrees/idtxl_network_comparison.doctree | Bin 50355 -> 52001 bytes docs/doctrees/idtxl_network_inference.doctree | Bin 207769 -> 211790 bytes docs/doctrees/idtxl_process_analysis.doctree | Bin 96075 -> 380588 bytes docs/doctrees/idtxl_results_class.doctree | Bin 116053 -> 144760 bytes docs/doctrees/index.doctree | Bin 8333 -> 8581 bytes docs/doctrees/modules.doctree | Bin 2538 -> 2666 bytes docs/html/.buildinfo | 2 +- .../embedding_optimization_ais_Rudelt.html | 1145 ++++++++ .../_modules/idtxl/estimators_Rudelt.html | 1217 +++++++++ docs/html/_modules/idtxl/results.html | 210 +- docs/html/_modules/index.html | 19 +- docs/html/_sources/idtxl.rst.txt | 24 +- .../_sources/idtxl_process_analysis.rst.txt | 13 + .../html/_sources/idtxl_results_class.rst.txt | 3 + docs/html/_static/basic.css | 114 +- docs/html/_static/doctools.js | 7 +- docs/html/_static/documentation_options.js | 2 +- docs/html/_static/epub.css | 2 +- docs/html/_static/language_data.js | 2 +- docs/html/_static/pygments.css | 7 +- docs/html/_static/pyramid.css | 2 +- docs/html/_static/searchtools.js | 17 +- docs/html/_static/underscore-1.13.1.js | 2042 ++++++++++++++ docs/html/_static/underscore.js | 8 +- docs/html/genindex.html | 238 +- docs/html/idtxl.html | 2405 ++++++++++++----- docs/html/idtxl_data_class.html | 105 +- docs/html/idtxl_estimators.html | 289 +- docs/html/idtxl_helper.html | 162 +- docs/html/idtxl_network_comparison.html | 59 +- docs/html/idtxl_network_inference.html | 117 +- docs/html/idtxl_process_analysis.html | 1240 ++++++++- docs/html/idtxl_results_class.html | 223 +- docs/html/index.html | 55 +- docs/html/modules.html | 26 +- docs/html/objects.inv | Bin 2001 -> 2648 bytes docs/html/py-modindex.html | 25 +- docs/html/search.html | 29 +- docs/html/searchindex.js | 2 +- docs/idtxl.rst | 24 +- docs/idtxl_process_analysis.rst | 13 + docs/idtxl_results_class.rst | 3 + idtxl/embedding_optimization_ais_Rudelt.py | 94 +- idtxl/estimators_Rudelt.py | 54 +- idtxl/results.py | 116 +- 51 files changed, 8647 insertions(+), 1472 deletions(-) create mode 100644 docs/html/_modules/idtxl/embedding_optimization_ais_Rudelt.html create mode 100644 docs/html/_modules/idtxl/estimators_Rudelt.html create mode 100644 docs/html/_static/underscore-1.13.1.js diff --git a/docs/conf.py b/docs/conf.py index 51aa3426..4dccc255 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -69,9 +69,9 @@ # built documents. # # The short X.Y version. -version = u'1.2.1' +version = u'1.3' # The full version, including alpha/beta/rc tags. -release = u'1.2.1' +release = version # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/docs/doctrees/environment.pickle b/docs/doctrees/environment.pickle index 51653adda36186aef695c49c28c19bd1a929177d..153fbd8eeabb936c94259f04c31fc481c8d1acf8 100644 GIT binary patch delta 145616 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%0DeKAEBJ-{;^!BO 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 delta 44106 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 PAvr}3DEOV%4O#yWkaVqR diff --git a/docs/doctrees/idtxl.doctree b/docs/doctrees/idtxl.doctree index 0815cc6d42551e56c23b86c0555cf5269d1c486b..d57236e49399f936c2e5429fc4560f637a6ddff2 100644 GIT binary patch literal 1798393 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 z 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 XP3waBUfA-QEZXjB`V`z-7U7=Ven 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 literal 1459388 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 diff --git a/docs/doctrees/idtxl_data_class.doctree b/docs/doctrees/idtxl_data_class.doctree index b27b8737538feb53dcefc838bf3d6589faa0bd81..99ab30a5176120306dacca100e6149178554007a 100644 GIT binary patch literal 170574 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 q~ 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 T7Tc4 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 XHcJvDM`a7JWdd1?+i5pPWbgk6J`?h8 literal 381072 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%0DU6BvAlqg)5(>9@&P5o$C6JPAa570 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�nLNY0tu21eO){0z2 zkDo-=cz&ux6A@S*D;GrJ+~!(L2D$%b_8bU0Jx(;6oGq3xIi?xHg-Of_WroVrY`$w3 z@P*RSCP}uND!FX`{{3c-@JzUG6I#|bEj3Rj2@Gy_3iQ_b&JzhdE?fIRtn{=j6RI9Dj)e-P87N)?ju zwY7Pqf==Go!1ApD@+9^<|8=rdna&FeuAfG|>-;qM%a;{6M*3$G(0dyTKxQ3uPrX9|IiOAk_nT2V#Fb$zmqT$!-Wczz-Vf>hL5?QTfOY;EZQ=ql@L zIX{nC<1>1jRlgiV(m%t#A4?zkzel29(KhvO^q)8H!hhaK|G9Yr|GAO=^E3LxPw<~c zb2UNL7Z+IH9Bwy*+0EMTW^H#j3c&+QBdo*1TGm@(jCb`m>Y2KVXb)^Ok28gU;dR_} z5ju{T4qW*cTBx!eCxH2dx5H9^D9le)N=mL+)2Fw5RIOKAJ+79cGN7kf{X^$g>!jpQ zZtY9_<*?=|s1em{9ZsuQeV~608j5$Qw1xF~jrz=(oujhk*t{_LrQNizA{X@k2ehJh AjQ{`u diff --git a/docs/doctrees/idtxl_helper.doctree b/docs/doctrees/idtxl_helper.doctree index c37d1057ee9ecc2265a5a2def9bf952c26ed4631..fcc1f57891ab9cc2508be964f3840fecc02ea5b4 100644 GIT binary patch literal 160025 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 literal 156288 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 diff --git a/docs/doctrees/idtxl_network_comparison.doctree b/docs/doctrees/idtxl_network_comparison.doctree index 4a422b556072b192150c6d13f9af566422d7ead4..f89fcb00ea8f3fd8f112a7a40c66267977f1fa41 100644 GIT binary patch literal 52001 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 TkGp%D0d_d>ZFrPhOw0cVY)sz} literal 50355 zcmeHQ3$P?tSy-NVd$CZd%Jt* z#dOc^T_hSTL;|fr7%&ut<%5@i7!}1T((`+m>|0sJ*=4HyZ6uBS;3>rbegUZw2ji z@P@&@R}3B)%x5z_|76nX_v*nQy8tcfVbpB&g7)D4K{iXx)2Nv&2>6XjP*0;yTY-mD z;dHq1{=s}WlTD>j+6;_W+0LUuda~0y?$tZ3uHTCiKvHWo-f%2fCM{N#Y)hR!d_ zrU6I@hdaV`;reV^;CeLM(2Ux_;Ap?*XB9t9dr_^QVvaPY^-&`s{5RH{ev;rJ{+??4 zE&kW0M!&1S)cpGKUa&}Q`q{?RU!qroa9cPRZlMvw-Pw(Y?oNVUa;WQLlzQYJ>IL0S za_G+6jx9G2fkernsF5x=t8G5ps-EpaF9GIzj$GKUg%@N~QM(Z=8wBFC3oirCp$D>D zfqz%w-!=F*Pxxcvy@+Am5BG-$G)_muJ(xNA+yK7TS9Cd#H?#DnnnajT+V5F>xk&Kk zR>hY2eT*>#w~fL1?RF>ihj^V$GlF`YiM!NS&97;ocsnN>N6{ZWyP4%y^KjDjN%A&z zdjV*CA{fv_Z$mFP3F3Fg5uefhP!8R@rw$WiK)v>o*ID#f!-brND<}bWamsGtbb#)V zKuCQFr?RJv>`c;SObeS-FDyo?@K|^^(d8aZm+%D=&l!g2Fp@iRCPtdKE6aIfBNdfH zYH0;h*+s(eK*bkMM8U~Atj{3ZCjYGZ?Rwbh88me%!VEMt^?OS}I>??{ZFL&`W+1dK zhx<@=w2vBt@OU1@+tzuDwA z~Ww_sXtE+#-kjh};gJqsGns6PdvxNfg=B7$altso6Mjl^5*^t_Z_E1OAnMbJI*qV{6Y>je#OvDax; z8h+|~y`bLdHSnkpvk&0WeDH4e{C2~;Wx=~0E3uc5;Z4%0?l&t~($d7k66i&(ZZjYj z293j#Z|4ufT0-6p33*p32?^f`eOV7M$uaUZ{F>!!2n#ZkO{Yt}PQPm?iS|%7);rCl z8?0O}M=Sd#fSiQs2nR=Yk-&ZwXnY7N`!OjrF4JXnuw}I!Ty1thLCx|4pj`XPfvB>Ao0bdU~A3&e+T`(3ZHEx z#f4R1Jl}-I|LSV|WiFgbu78a*p4g0^^zZU0R^Mz;E=jM|}B5kos{KWgbH#(h!o*TBos6 z*yh78*{qr$!@DcsYd2vD*?M)TvVZ@{D8;5`|9;Q+l7215euNQh9-hst-FBb|x8e<$ zd

+ +
+
+
+
+ +

Source code for idtxl.embedding_optimization_ais_Rudelt

+""" Optimization of embedding parameters of spike times using the history dependence estimators """
+
+import numpy as np
+from scipy.optimize import newton
+from sys import stderr
+from idtxl.estimators_Rudelt import RudeltBBCEstimator, RudeltShufflingEstimator
+import idtxl.hde_utils as utl
+from idtxl.results import DotDict, ResultsSingleProcessRudelt
+from pathlib import Path
+from idtxl.data_spiketime import Data_spiketime
+
+
+# noinspection PyAttributeOutsideInit
+
[docs]class OptimizationRudelt(): + """ + Optimization of embedding parameters of spike times using the history dependence estimators + + References: + + [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding + optimization reveals long-lasting history dependence in + neural spiking activity, 2021, PLOS Computational Biology, 17(6) + + [2]: https://github.com/Priesemann-Group/hdestimator + + implemented in idtxl by Michael Lindner, Göttingen 2021 + + Args: + settings : dict + - estimation_method : string + The method to be used to estimate the history dependence 'bbc' or 'shuffling'. + - embedding_step_size : float + Step size delta t (in seconds) with which the window is slid through the data. + (default: 0.005) + - embedding_number_of_bins_set : list of integer values + Set of values for d, the number of bins in the embedding. + (default: [1, 2, 3, 4, 5]) + - embedding_past_range_set : list of floating-point values + Set of values for T, the past range (in seconds) to be used for embeddings. + (default: [0.005, 0.00561, 0.00629, 0.00706, 0.00792, 0.00889, + 0.00998, 0.01119, 0.01256, 0.01409, 0.01581, 0.01774, 0.01991, + 0.02233, 0.02506, 0.02812, 0.03155, 0.0354, 0.03972, 0.04456, + 0.05, 0.0561, 0.06295, 0.07063, 0.07924, 0.08891, 0.09976, + 0.11194, 0.12559, 0.14092, 0.15811, 0.17741, 0.19905, 0.22334, + 0.25059, 0.28117, 0.31548, 0.35397, 0.39716, 0.44563, 0.5, + 0.56101, 0.62946, 0.70627, 0.79245, 0.88914, 0.99763, 1.11936, + 1.25594, 1.40919, 1.58114, 1.77407, 1.99054, 2.23342, 2.50594, + 2.81171, 3.15479, 3.53973, 3.97164, 4.45625, 5.0]) + - embedding_scaling_exponent_set : dict + Set of values for kappa, the scaling exponent for the bins in the embedding. + Should be a python-dictionary with the three entries 'number_of_scalings', 'min_first_bin_size' and + 'min_step_for_scaling'. + defaults: {'number_of_scalings': 10, 'min_first_bin_size': 0.005, 'min_step_for_scaling': 0.01}) + - bbc_tolerance : float + The tolerance for the Bayesian Bias Criterion. Influences which embeddings are + discarded from the analysis. + (default: 0.05) + - return_averaged_R : bool + Return R_tot as the average over R(T) for T in [T_D, T_max], instead of R_tot = R(T_D). + If set to True, the setting for number_of_bootstraps_R_tot (see below) is ignored and set to 0 + and CI bounds are not calculated. + (default: True) + - timescale_minimum_past_range : float + Minimum past range T_0 (in seconds) to take into consideration for the estimation of the + information timescale tau_R. + (default: 0.01) + - number_of_bootstraps_R_max : int + The number of bootstrap re-shuffles that should be used to determine the optimal + embedding. (Bootstrap the estimates of R_max to determine R_tot.) + These are computed during the 'history-dependence' task because they are essential + to obtain R_tot. + (default: 250) + - number_of_bootstraps_R_tot : int + The number of bootstrap re-shuffles that should be used to estimate the confidence + interval of the optimal embedding. (Bootstrap the estimates of R_tot = R(T_D) to + obtain a confidence interval for R_tot.). + These are computed during the 'confidence-intervals' task. + The setting return_averaged_R (see above) needs to be set to False for this setting + to take effect. + (default: 250) + - number_of_bootstraps_nonessential : int + The number of bootstrap re-shuffles that should be used to estimate the confidence + intervals for embeddings other than the optimal one. (Bootstrap the estimates of + R(T) for all other T.) + (These are not necessary for the main analysis and therefore default to 0.) + - symbol_block_length : int + The number of symbols that should be drawn in each block for bootstrap resampling + If it is set to None (recommended), the length is automatically chosen, based + on heuristics + (default: None) + - bootstrap_CI_use_sd : bool + Most of the time we observed normally-distributed bootstrap replications, + so it is sufficient (and more efficient) to compute confidence intervals + based on the standard deviation + (default: True) + - bootstrap_CI_percentile_lo : float + The lower percentile for the confidence interval. + This has no effect if bootstrap_CI_use_sd is set to True + (default: 2.5) + - bootstrap_CI_percentile_hi : float + The upper percentiles for the confidence interval. + This has no effect if bootstrap_CI_use_sd is set to True + (default: 97.5) + - analyse_auto_MI : bool + perform calculation of auto mutual information of the spike train + (default: True) + If set to True: + + - auto_MI_bin_size_set : list of floating-point values + Set of values for the sizes of the bins (in seconds). + (default: [0.005, 0.01, 0.025, 0.05, 0.25, 0.5]) + - auto_MI_max_delay : int + The maximum delay (in seconds) between the past bin and the response. + (default: 5) + + - visualization : bool + create .eps output image showing the optimization values and graphs for + the history dependence and the auto mutual information + (default: False) + if set to True: + + - output_path : String + Path where the .eps images should be saved + - output_prefix : String + Prefix of the output images + e.g. <output_prefix>_process0.eps + + - debug: bool + show values while calculating + (default: False) + """ + + def __init__(self, settings=None): + settings = self._check_settings(settings) + self.settings = settings.copy() + + self.settings.setdefault('embedding_step_size', 0.005) + self.settings.setdefault('embedding_past_range_set', [0.005, 0.00561, 0.00629, 0.00706, 0.00792, 0.00889, + 0.00998, 0.01119, 0.01256, 0.01409, 0.01581, 0.01774, + 0.01991, 0.02233, 0.02506, 0.02812, 0.03155, 0.0354, + 0.03972, 0.04456, 0.05, 0.0561, 0.06295, 0.07063, + 0.07924, 0.08891, 0.09976, 0.11194, 0.12559, 0.14092, + 0.15811, 0.17741, 0.19905, 0.22334, 0.25059, 0.28117, + 0.31548, 0.35397, 0.39716, 0.44563, 0.5, 0.56101, 0.62946, + 0.70627, 0.79245, 0.88914, 0.99763, 1.11936, 1.25594, + 1.40919, 1.58114, 1.77407, 1.99054, 2.23342, 2.50594, + 2.81171, 3.15479, 3.53973, 3.97164, 4.45625, 5.0]) + self.settings.setdefault('embedding_number_of_bins_set', [1, 2, 3, 4, 5]) + self.settings.setdefault('embedding_scaling_exponent_set', + {'number_of_scalings': 10, + 'min_first_bin_size': 0.005, + 'min_step_for_scaling': 0.01}) + + self.settings.setdefault('bbc_tolerance', 0.05) + self.settings.setdefault('return_averaged_R', True) + self.settings.setdefault('timescale_minimum_past_range', 0.01) + + self.settings.setdefault('analyse_auto_MI', True) + self.settings.setdefault('auto_MI_bin_size_set', [0.005, 0.01, 0.025, 0.05, 0.25, 0.5]) + self.settings.setdefault('auto_MI_max_delay', 5) + + self.settings.setdefault('number_of_bootstraps_R_max', 250) + self.settings.setdefault('number_of_bootstraps_R_tot', 250) + self.settings.setdefault('number_of_bootstraps_nonessential', 0) + self.settings.setdefault('symbol_block_length', None) + self.settings.setdefault('bootstrap_CI_use_sd', True) + self.settings.setdefault('bootstrap_CI_percentile_lo', 2.5) + self.settings.setdefault('bootstrap_CI_percentile_hi', 97.5) + self.settings.setdefault('visualization', False) + self.settings.setdefault('debug', False) + + self.check_inputs() # ------------------------------------------------------------- TODO CHECK INPUTS + + self.embeddings = self.get_embeddings(self.settings['embedding_past_range_set'], + self.settings['embedding_number_of_bins_set'], + self.settings['embedding_scaling_exponent_set']) + + + @staticmethod + def _check_settings(settings=None): + """Set default for settings dictionary. + + Check if settings dictionary is None. If None, initialise an empty + dictionary. If not None check if type is dictionary. Function should be + called before setting default values. + """ + if settings is None: + return {} + elif type(settings) is not dict: + raise TypeError('settings should be a dictionary.') + else: + return settings + +
[docs] def check_inputs(self): + """ + Check input settings for completeness + + """ + + args_float = ['embedding_step_size', + 'timescale_minimum_past_range', + 'bootstrap_CI_percentile_lo', + 'bootstrap_CI_percentile_hi', + 'bbc_tolerance'] + for key in args_float: + assert (key in self.settings), \ + (key + ' has to be specified (see help)!') + assert (isinstance(self.settings[key], float)), \ + ("Error: setting '" + key + "' needs to an floating point value (see help!!). Aborting.") + + args_int = ['number_of_bootstraps_R_max', + 'number_of_bootstraps_R_tot', + 'number_of_bootstraps_nonessential'] + for key in args_int: + assert (key in self.settings), \ + (key + ' has to be specified (see help)!') + assert (isinstance(self.settings[key], int)), \ + ("Error: setting '" + key + "' needs to an integer value (see help!!). Aborting.") + + args_bool = ['return_averaged_R', + 'bootstrap_CI_use_sd', + 'debug'] + for key in args_bool: + assert (key in self.settings), \ + (key + ' has to be specified (see help)!') + assert (isinstance(self.settings[key], bool)), \ + ("Error: setting '" + key + "' needs to a boolean expression (see help!!). Aborting.") + + assert('embedding_past_range_set' in self.settings), \ + 'embedding_past_range_set has to be specified (see help)!' + assert (isinstance(self.settings['embedding_past_range_set'], list)), \ + "Error: setting 'embedding_past_range_set' needs to be a list but is defined as {0}. " \ + "Aborting.".format(type(self.settings['embedding_past_range_set'])) + + assert ('embedding_number_of_bins_set' in self.settings), \ + 'embedding_number_of_bins_set has to be specified (see help)!' + assert (isinstance(self.settings['embedding_number_of_bins_set'], list)), \ + "Error: setting 'embedding_number_of_bins_set' needs to a list but is defined as {0}. " \ + "Aborting.".format(type(self.settings['embedding_number_of_bins_set'])) + + assert ('embedding_scaling_exponent_set' in self.settings), \ + 'embedding_scaling_exponent_set has to be specified (see help)!' + + assert ('number_of_scalings' in self.settings['embedding_scaling_exponent_set']), \ + "'number_of_scalings' have to be specified in self.settings['embedding_scaling_exponent_set'] (see help)!" + assert (isinstance(self.settings['embedding_scaling_exponent_set']['number_of_scalings'], int)), \ + "Error: setting 'number_of_scalings' needs to be an integer value but is defined as {0}. " \ + "Aborting.".format(type(self.settings['number_of_scalings'])) + assert ('min_first_bin_size' in self.settings['embedding_scaling_exponent_set']), \ + "'min_first_bin_size' have to be specified in self.settings['embedding_scaling_exponent_set'] (see help)!" + assert (isinstance(self.settings['embedding_scaling_exponent_set']['min_first_bin_size'], float)), \ + "Error: setting 'min_first_bin_sizes' needs to be a floating point value but is defined as {0}. " \ + "Aborting.".format(type(self.settings['min_first_bin_sizes'])) + assert ('min_step_for_scaling' in self.settings['embedding_scaling_exponent_set']), \ + "'min_step_for_scaling' have to be specified in self.settings['embedding_scaling_exponent_set'] (see help)!" + assert (isinstance(self.settings['embedding_scaling_exponent_set']['min_step_for_scaling'], float)), \ + "Error: setting 'min_step_for_scaling' needs to be a floating point value but is defined as {0}. " \ + "Aborting.".format(type(self.settings['min_step_for_scaling'])) + + assert ('symbol_block_length' in self.settings), \ + 'symbol_block_length has to be specified (see help)!' + if self.settings['symbol_block_length'] is not None: + assert (isinstance(self.settings['symbol_block_length'], int)), \ + "Error: setting 'symbol_block_length' needs to an integer value but is defined as {0}. " \ + "Aborting.".format(type(self.settings['symbol_block_length'])) + + if self.settings['analyse_auto_MI']: + assert (isinstance(self.settings['analyse_auto_MI'], bool)), \ + "Error: setting 'analyse_auto_MI' needs to be a boolean expression but is defined as {0}. " \ + "Aborting.".format(type(self.settings['analyse_auto_MI'])) + assert ('auto_MI_bin_size_set' in self.settings), \ + 'If analyse_auto_MI is set to True, auto_MI_bin_size_set has to be specified (see help)!' + assert (isinstance(self.settings['auto_MI_bin_size_set'], list)), \ + "Error: setting 'auto_MI_bin_size_set' needs to a list but is defined as {0}. " \ + "Aborting.".format(type(self.settings['auto_MI_bin_size_set'])) + assert ('auto_MI_max_delay' in self.settings), \ + 'If analyse_auto_MI is set to True, auto_MI_max_delay has to be specified (see help)!' + assert (isinstance(self.settings['auto_MI_max_delay'], int)), \ + "Error: setting 'auto_MI_max_delay' needs to be an integer value but is defined as {0}. " \ + "Aborting.".format(type(self.settings['auto_MI_max_delay'])) + + if self.settings['visualization']: + assert (isinstance(self.settings['visualization'], bool)), \ + "Error: setting 'visualization' needs to be boolean but is defined as {0}. " \ + "Aborting.".format(type(self.settings['visualization'])) + assert ('output_path' in self.settings), \ + 'If visualization is set to True an output path has to be specified (see help)!' + assert ('output_prefix' in self.settings), \ + 'If visualization is set to True an output prefix has to be specified (see help)!' + + # Cython implementation uses 64bit unsigned integers for the symbols, + # we allow up to 62 bins (window has 1 bin more..) + assert (max(self.settings['embedding_number_of_bins_set']) <= 62), \ + 'Error: Max number of bins too large; use less than 63. Aborting.' + + # If R_tot is computed as an average over Rs, no confidence interval can be estimated + if self.settings['return_averaged_R']: + self.settings['number_of_bootstraps_R_tot'] = 0
+ +
[docs] def get_embeddings(self, + embedding_past_range_set, + embedding_number_of_bins_set, + embedding_scaling_exponent_set): + """ + Get all combinations of parameters T, d, k, based on the + sets of selected parameters. + """ + + embeddings = [] + for past_range_T in embedding_past_range_set: + for number_of_bins_d in embedding_number_of_bins_set: + if not isinstance(number_of_bins_d, int) or number_of_bins_d < 1: + print("Error: number of bins {} is not a positive integer. Skipping.".format(number_of_bins_d), + file=stderr, flush=True) + continue + + if type(embedding_scaling_exponent_set) == dict: + scaling_set_given_T_and_d = self.get_set_of_scalings(past_range_T, + number_of_bins_d, + **embedding_scaling_exponent_set) + else: + scaling_set_given_T_and_d = embedding_scaling_exponent_set + + for scaling_k in scaling_set_given_T_and_d: + embeddings += [(past_range_T, number_of_bins_d, scaling_k)] + + return embeddings
+ +
[docs] def get_set_of_scalings(self, past_range_T, + number_of_bins_d, + number_of_scalings, + min_first_bin_size, + min_step_for_scaling): + """ + Get scaling exponents such that the uniform embedding as well as + the embedding for which the first bin has a length of + min_first_bin_size (in seconds), as well as linearly spaced + scaling factors in between, such that in total + number_of_scalings scalings are obtained. + """ + + min_scaling = 0 + if past_range_T / number_of_bins_d <= min_first_bin_size or number_of_bins_d == 1: + max_scaling = 0 + else: + # for the initial guess assume the largest bin dominates, so k is approx. log(T) / d + + max_scaling = newton(lambda scaling: self.get_past_range(number_of_bins_d, + min_first_bin_size, + scaling) - past_range_T, + np.log10(past_range_T / min_first_bin_size) / (number_of_bins_d - 1), + tol=1e-04, maxiter=500) + + while np.linspace(min_scaling, max_scaling, + number_of_scalings, retstep=True)[1] < min_step_for_scaling: + number_of_scalings -= 1 + + return np.linspace(min_scaling, max_scaling, number_of_scalings)
+ +
[docs] def get_past_range(self, number_of_bins_d, first_bin_size, scaling_k): + """ + Get the past range T of the embedding, based on the parameters d, tau_1 and k. + """ + + return np.sum([first_bin_size * 10 ** ((number_of_bins_d - i) * scaling_k) + for i in range(1, number_of_bins_d + 1)])
+ +
[docs] def get_history_dependence(self, data, process): + """ + Estimate the history dependence for each embedding to all given processes. + """ + + # load estimators + if self.settings['estimation_method'] == 'bbc': + estbbc = RudeltBBCEstimator() + elif self.settings['estimation_method'] == 'shuffling': + estshu = RudeltShufflingEstimator() + + # get history dependence + history_dependence = np.empty(shape=(len(self.embeddings))) + if self.settings['estimation_method'] == 'bbc': + bbc_term = np.empty(shape=(len(self.embeddings))) + + embedding_count = 0 + for embedding in self.embeddings: + + if self.settings['debug']: + print("Embedding: " + str(embedding[0]) + ", " + str(embedding[1]) + ", " + str(embedding[2])) + + symbol_array, past_symbol_array, current_symbol_array, symbol_array_length = \ + data.get_realisations_symbols(process, + embedding[0], + embedding[1], + embedding[2], + self.settings['embedding_step_size'], + output_spike_times=False) + + if self.settings['estimation_method'] == 'bbc': + I_bbc, R_bbc, bbc_t = \ + estbbc.estimate(symbol_array[0], past_symbol_array[0], current_symbol_array[0]) + history_dependence[embedding_count] = R_bbc + bbc_term[embedding_count] = bbc_t + + if self.settings['debug']: + print("\tHD: " + str(R_bbc) + " BBC: " + str(bbc_t)) + + elif self.settings['estimation_method'] == 'shuffling': + I_sh, R_sh = estshu.estimate(symbol_array[0]) + history_dependence[embedding_count] = R_sh + + if self.settings['debug']: + print("\tHD: " + str(R_sh)) + + embedding_count += 1 + + if self.settings['estimation_method'] == 'bbc': + return history_dependence, bbc_term + elif self.settings['estimation_method'] == 'shuffling': + return history_dependence
+ +
[docs] def get_bootstrap_history_dependence(self, + data, + embedding, + number_of_bootstraps, + symbol_block_length=None): + """ + For a given embedding, return bootstrap replications for R. + """ + estbbc = RudeltBBCEstimator() + estshu = RudeltShufflingEstimator() + + if symbol_block_length is not None: + symbol_block_length = int(symbol_block_length) + + # compute the bootstrap replications + bs_Rs = np.zeros(number_of_bootstraps) + + for rep in range(number_of_bootstraps): + bs_symbol_array, bs_past_symbol_array, bs_current_symbol_array = \ + data.get_bootstrap_realisations_symbols(self.process, + embedding[0], + embedding[1], + embedding[2], + self.settings['embedding_step_size'], + symbol_block_length=symbol_block_length) + + if self.settings['estimation_method'] == 'bbc': + I_bbc, R_bbc, bbc_t = \ + estbbc.estimate(bs_symbol_array[0], bs_past_symbol_array[0], bs_current_symbol_array[0]) + bs_Rs[rep] = R_bbc + + if self.settings['debug']: + print("\tHD: " + str(R_bbc) + " BBC: " + str(bbc_t)) + + elif self.settings['estimation_method'] == 'shuffling': + I_sh, R_sh = estshu.estimate(bs_symbol_array[0]) + bs_Rs[rep] = R_sh + + if self.settings['debug']: + print("\tHD: " + str(R_sh)) + + return bs_Rs
+ +
[docs] def get_temporal_depth_T_D(self, get_R_thresh=False): + """ + Get the temporal depth T_D, the past range for the + 'optimal' embedding parameters. + + Given the maximal history dependence R at each past range T, + (cf get_embeddings_that_maximise_R), first find the smallest T at + which R is maximised (cf get_max_R_T). If bootstrap replications + for this R are available, get the smallest T at which this R minus + one standard deviation of the bootstrap estimates is attained. + """ + + # load data + embedding_maximising_R_at_T, max_Rs \ + = self.get_embeddings_that_maximise_R() + + Ts = sorted([key for key in max_Rs.keys()]) + Rs = [max_Rs[T] for T in Ts] + + # first get the max history dependence, and if available its bootstrap replications + max_R, max_R_T = utl.get_max_R_T(max_Rs) + + number_of_bins_d, scaling_k = embedding_maximising_R_at_T[max_R_T] + + embindex = self.embeddings.index((max_R_T, number_of_bins_d, scaling_k)) + + bs_Rs = self.bs_history_dependence[embindex] + + if isinstance(bs_Rs, np.ndarray): + max_R_sd = np.std(bs_Rs) + else: + max_R_sd = 0 + + R_tot_thresh = max_R - max_R_sd + + T_D = min(Ts) + for R, T in zip(Rs, Ts): + if R >= R_tot_thresh: + T_D = T + break + + if not get_R_thresh: + return T_D + else: + return T_D, R_tot_thresh
+ +
[docs] def get_embeddings_that_maximise_R(self, + bbc_tolerance=None, + dependent_var="T", + get_as_list=False): + """ + For each T (or d), get the embedding for which R is maximised. + + For the bbc estimator, here the bbc_tolerance is applied, ie + get the unbiased embeddings that maximise R. + """ + + assert dependent_var in ["T", "d"] + + if bbc_tolerance is None: + bbc_tolerance = np.inf + + max_Rs = {} + embeddings_that_maximise_R = {} + + for i in range(len(self.embeddings)): + embedding = self.embeddings[i] + past_range_T = float(embedding[0]) + number_of_bins_d = int(float(embedding[1])) + scaling_k = float(embedding[2]) + history_dependence = self.history_dependence[i] + + if self.settings['estimation_method'] == "bbc": + if self.bbc_term[i] >= self.settings['bbc_tolerance']: # ----------------------- TODO check + continue + + if dependent_var == "T": + if not past_range_T in embeddings_that_maximise_R \ + or history_dependence > max_Rs[past_range_T]: + max_Rs[past_range_T] = history_dependence + embeddings_that_maximise_R[past_range_T] = (number_of_bins_d, scaling_k) + elif dependent_var == "d": + if not number_of_bins_d in embeddings_that_maximise_R \ + or history_dependence > max_Rs[number_of_bins_d]: + max_Rs[number_of_bins_d] = history_dependence + embeddings_that_maximise_R[number_of_bins_d] = (past_range_T, scaling_k) + + if get_as_list: + embeddings = [] + if dependent_var == "T": + for past_range_T in embeddings_that_maximise_R: + number_of_bins_d, scaling_k = embeddings_that_maximise_R[past_range_T] + embeddings += [(past_range_T, number_of_bins_d, scaling_k)] + elif dependent_var == "d": + for number_of_bins_d in embeddings_that_maximise_R: + past_range_T, scaling_k = embeddings_that_maximise_R[number_of_bins_d] + embeddings += [(past_range_T, number_of_bins_d, scaling_k)] + return embeddings + else: + return embeddings_that_maximise_R, max_Rs
+ +
[docs] def get_information_timescale_tau_R(self): + """ + Get the information timescale tau_R, a characteristic + timescale of history dependence similar to an autocorrelation + time. + """ + + max_Rs = self.max_Rs + + Ts = np.array(sorted([key for key in max_Rs.keys()])) + Rs = np.array([max_Rs[T] for T in Ts]) + + R_tot = self.get_R_tot() + + T_0 = self.settings["timescale_minimum_past_range"] + + # get dRs + dRs = [] + R_prev = 0. + + # No values higher than R_tot are allowed, + # otherwise the information timescale might be + # misestimated because of spurious contributions + # at large T + for R, T in zip(Rs[Rs <= R_tot], Ts[Rs <= R_tot]): + + # No negative increments are allowed + dRs += [np.amax([0.0, R - R_prev])] + + # The increment is taken with respect to the highest previous value of R + if R > R_prev: + R_prev = R + + dRs = np.pad(dRs, (0, len(Rs) - len(dRs)), + mode='constant', constant_values=0) + + # compute tau_R + Ts_0 = np.append([0], Ts) + dRs_0 = dRs[Ts_0[:-1] >= T_0] + + # Only take into considerations contributions beyond T_0 + Ts_0 = Ts_0[Ts_0 >= T_0] + norm = np.sum(dRs_0) + + if norm == 0.: + tau = 0.0 + else: + Ts_0 -= Ts_0[0] + tau = np.dot(((Ts_0[:-1] + Ts_0[1:]) / 2), dRs_0) / norm + return tau
+ +
[docs] def get_R_tot(self, + return_averaged_R=False, + **kwargs): + + max_Rs = self.max_Rs + + if return_averaged_R: + T_D, R_tot_thresh = self.get_temporal_depth_T_D(get_R_thresh=True) + + Ts = sorted([key for key in max_Rs.keys()]) + Rs = [max_Rs[T] for T in Ts] + + T_max = T_D + for R, T in zip(Rs, Ts): + if T < T_D: + continue + T_max = T + if R < R_tot_thresh: + break + + return np.average([R for R, T in zip(Rs, Ts) if T_D <= T < T_max]) + + else: + + temporal_depth_T_D = self.get_temporal_depth_T_D() + + return max_Rs[temporal_depth_T_D]
+ +
[docs] def compute_CIs(self, + data, + target_R='R_max', + symbol_block_length=None): + """ + Compute bootstrap replications of the history dependence estimate + which can be used to obtain confidence intervals. + + Args: + data : data_spiketime object + Input data + target_R : String + One of 'R_max', 'R_tot' or 'nonessential'. + If set to R_max, replications of R are produced for the T at which + R is maximised. + If set to R_tot, replications of R are produced for T = T_D (cf + get_temporal_depth_T_D). + If set to nonessential, replications of R are produced for each T + (one embedding per T, cf get_embeddings_that_maximise_R). These + are not otherwise used in the analysis and are probably only useful + if the resulting plot is visually inspected, so in most cases it can + be set to zero. + symbol_block_length : int + The number of symbols that should be drawn in each block for bootstrap resampling + If it is set to None (recommended), the length is automatically chosen, based + on heuristics + """ + + assert target_R in ['nonessential', 'R_max', 'R_tot'] + + number_of_bootstraps = self.settings['number_of_bootstraps_{}'.format(target_R)] + + if number_of_bootstraps == 0: + return + + embedding_maximising_R_at_T, max_Rs \ + = self.get_embeddings_that_maximise_R() + self.embedding_maximising_R_at_T = embedding_maximising_R_at_T + self.max_Rs = max_Rs + + if target_R == 'nonessential': + # bootstrap R for unessential Ts (not required for the main analysis) + embeddings = [] + for past_range_T in embedding_maximising_R_at_T: + number_of_bins_d, scaling_k = embedding_maximising_R_at_T[past_range_T] + embeddings += [(past_range_T, number_of_bins_d, scaling_k)] + + elif target_R == 'R_max': + # bootstrap R for the max R, to get a good estimate for the standard deviation + # which is used to determine R_tot + max_R, max_R_T = utl.get_max_R_T(max_Rs) + self.max_R = max_R + self.max_R_T = max_R_T + number_of_bins_d, scaling_k = embedding_maximising_R_at_T[max_R_T] + embeddings = [(max_R_T, number_of_bins_d, scaling_k)] + + elif target_R == 'R_tot': + T_D = self.get_temporal_depth_T_D() + number_of_bins_d, scaling_k = embedding_maximising_R_at_T[T_D] + + embeddings = [(T_D, number_of_bins_d, scaling_k)] + + for embedding in embeddings: + + embindex = self.embeddings.index(embedding) + + if hasattr(self, "bs_history_dependence"): + stored_bs_Rs = self.bs_history_dependence[embindex] + else: + self.bs_history_dependence = dict() + stored_bs_Rs = None + + if isinstance(stored_bs_Rs, np.ndarray): + number_of_stored_bootstraps = len(stored_bs_Rs) + else: + number_of_stored_bootstraps = 0 + + if not number_of_bootstraps > number_of_stored_bootstraps: + continue + + bs_R = \ + self.get_bootstrap_history_dependence(data, + embedding, + number_of_bootstraps - number_of_stored_bootstraps, + symbol_block_length=symbol_block_length) + + if stored_bs_Rs is not None: + bs_R = np.concatenate([stored_bs_Rs, bs_R]) + + self.bs_history_dependence[embindex] = bs_R
+ +
[docs] def analyse_auto_MI(self, spike_times): + """ + Get the auto MI for the spike times. If it is available from file, load + it, else compute it. + """ + + auto_MI_data = { + "delay": [], + "auto_MI": [] + } + auto_MI_dict = {} + for auto_MI_bin_size in self.settings['auto_MI_bin_size_set']: + number_of_delays = int(self.settings['auto_MI_max_delay'] / auto_MI_bin_size) + 1 + + # perform the MI analysis + auto_MI = self.get_auto_MI(spike_times, auto_MI_bin_size, number_of_delays) + + auto_MI_data["delay"] += [number_of_delays] + + auto_MI_dict[auto_MI_bin_size] = auto_MI + + auto_MI_data['auto_MI'] = auto_MI_dict + self.auto_MI = auto_MI_data
+ +
[docs] def get_auto_MI(self, spike_times, bin_size, number_of_delays): + """ + Compute the auto mutual information in the neuron's activity, a + measure closely related to history dependence. + """ + + binned_neuron_activity = utl.get_binned_neuron_activity(spike_times, bin_size, relative_to_median_activity=True) + + p_spike = sum(binned_neuron_activity) / len(binned_neuron_activity) + + self.H_spiking = utl.get_shannon_entropy([p_spike, + 1 - p_spike]) + + auto_MIs = np.empty(number_of_delays) + + # compute auto MI + for delay in range(number_of_delays): + + symbol_counts = [] + number_of_symbols = len(binned_neuron_activity) - delay - 1 + symbols = np.array([2 * binned_neuron_activity[i] + binned_neuron_activity[i + delay + 1] + for i in range(number_of_symbols)]) + symbol_counts += [dict([(unq_symbol, len(np.where(symbols == unq_symbol)[0])) + for unq_symbol in np.unique(symbols)])] + + symbol_counts = utl.add_up_dicts(symbol_counts) + number_of_symbols = sum(symbol_counts.values()) + + H_joint = utl.get_shannon_entropy([number_of_occurrences / number_of_symbols + for number_of_occurrences in symbol_counts.values()]) + + # I(X : Y) = H(X) - H(X|Y) = H(X) - (H(X,Y) - H(Y)) = H(X) + H(Y) - H(X,Y) + # auto_MI = 2 * H_spiking - H_joint + auto_MIs[delay] = 2 - H_joint / self.H_spiking # normalized auto MI = auto MI / H_spiking + + return auto_MIs
+ +
[docs] def optimize(self, data, processes='all'): + """ + Optimize the embedding parameters of spike time data using the Rudelt history dependence estimator. + + References: + + [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding + optimization reveals long-lasting history dependence in + neural spiking activity, 2021, PLOS Computational Biology, 17(6) + + [2]: https://github.com/Priesemann-Group/hdestimator + + implemented in idtxl by Michael Lindner, Göttingen 2021 + + Args: + data : Data_spiketime instance + raw data for analysis + processes : list of int + index of processes; + spike times are optimized all processes specified in the list separately. + + Returns: # -------------------------------------------------------------------------------------------------------- TODO + ResultsSingleProcessRudelt instance + results of Rudelt optimization, see documentation of + ResultsSingleProcessRudelt() + if visulization in settings was set True (see class OptimizationRudelt): + .eps images are created for each optimized process containing: + - optimized values for the process + - graph for the history dependence + - graph for auto mutual information (if calculated) + + """ + + # check input data + if type(data) != Data_spiketime: + raise ValueError('Input Data nneds to be Data_spiketime object but is defined as: ' + '{0}.'.format(type(data))) + + # check input process list + if processes == 'all': + processes = [t for t in range(data.n_processes)] + elif (type(processes) is list) and (type(processes[0]) is int): + pass + else: + raise ValueError('Processes were not specified correctly: ' + '{0}.'.format(processes)) + + if self.settings['debug']: + import pprint + pprint.pprint(self.settings, width=1) + + # open result dict + results = ResultsSingleProcessRudelt( + processes=processes) + + # start optimizing given processes + process_count = 0 + for process in processes: + + # optimize single process + single_result = self.optimize_single_run(data, process) + + # add results of single process to result object + results._add_single_result( + process_count=process_count, + process=process, + settings=self.settings, + results=single_result) + + process_count += 1 + + if self.settings['visualization'] == True: + filename = Path(self.settings['output_path']).joinpath( + '{}_process{}.svg'.format(self.settings['output_prefix'], process)) + utl.hde_visualize_results(results, process, filename) + + # remove results from single process from self + self.remove_subresults_single_process() + + return results
+ +
[docs] def optimize_single_run(self, data, process): + """ + optimizes a single realisation of spike time data given the process number + + Args: + data : Data_spiketime instance + raw data for analysis + process : int + index of process; + + Returns: + DotDict + with the following keys + + Process : int + Process that was optimized + estimation_method : String + Estimation method that was used for optimization + T_D : float + Estimated optimal value for the temporal depth TD + tau_R : + Information timescale tau_R, a characteristic timescale of history + dependence similar to an autocorrelation time. + R_tot : float + Estimated value for the total history dependence Rtot, + AIS_tot : float + Estimated value for the total active information storage + opt_number_of_bins_d : int + Number of bins d for the embedding that yields (R̂tot ,T̂D) + opt_scaling_k : int + Scaling exponent κ for the embedding that yields (R̂tot , T̂D) + opt_first_bin_size : int + Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ), + history_dependence : array with floating-point values + Estimated history dependence for each embedding + firing_rate : float + Firing rate of the neuron/ spike train + recording_length : float + Length of the recording (in seconds) + H_spiking : float + Entropy of the spike times + + if analyse_auto_MI was set to True additionally: + auto_MI : dict + numpy array of MI values for each delay + auto_MI_delays : list of int + list of delays depending on the given auto_MI_bin_sizes and auto_MI_max_delay + """ + + if (type(process) is int): + pass + else: + raise ValueError('Process is not specified correctly: ' + '{0}.'.format(process)) + + self.process = process + + # get history dependence + if self.settings['debug']: + print("\n\nGet History dependence\n") + + if self.settings['estimation_method'] == 'bbc': + self.history_dependence, self.bbc_term = \ + self.get_history_dependence(data, process) + elif self.settings['estimation_method'] == 'shuffling': + self.history_dependence = \ + self.get_history_dependence(data, process) + + if self.settings['debug']: + print("\n\nCompute CI\n") + + # get bootstrap history dependence (CI) + if self.settings['debug']: + print("R_max") + self.compute_CIs(data, + target_R='R_max', + symbol_block_length=self.settings['symbol_block_length']) + if self.settings['debug']: + print("R_tot") + self.compute_CIs(data, + target_R='R_tot', + symbol_block_length=self.settings['symbol_block_length']) + if self.settings['debug']: + print("R_nonessential") + self.compute_CIs(data, + target_R='nonessential', + symbol_block_length=self.settings['symbol_block_length']) + + # analyse auto MI + if self.settings['analyse_auto_MI']: + if self.settings['debug']: + print("\nAnalyse auto MI\n") + spike_times = data.get_spike_times_single(process) + self.analyse_auto_MI(spike_times) + + + # get output values + T_D = self.get_temporal_depth_T_D() + tau_R = self.get_information_timescale_tau_R() + R_tot = self.get_R_tot() + opt_number_of_bins_d, opt_scaling_k = self.embedding_maximising_R_at_T[T_D] + max_Rs = self.max_Rs + mr = np.array(list(max_Rs.items()), dtype=float) + HD_max_R = mr[:, 1] + opt_first_bin_size = newton(lambda first_bin_size: self.get_past_range(opt_number_of_bins_d, + first_bin_size, + opt_scaling_k) - T_D, + 0.005, tol=1e-03, maxiter=100) + firing_rate = data.get_firingrate(process, self.settings['embedding_step_size']) + recording_length = data.get_recording_length(process) + H_spiking = data.get_H_spiking(process, self.settings['embedding_step_size']) + + # get CI bounds + if not self.settings['return_averaged_R']: + embedding = (T_D, + opt_number_of_bins_d, + opt_scaling_k) + emb_ind = self.embeddings.index(embedding) + R_tot_CI_lo, R_tot_CI_hi = utl.get_CI_bounds(R_tot, + self.bs_history_dependence[emb_ind], + self.settings['bootstrap_CI_use_sd'], + self.settings['bootstrap_CI_percentile_lo'], + self.settings['bootstrap_CI_percentile_hi']) + else: + R_tot_CI_lo = None + R_tot_CI_hi = None + R_tot_CI = [R_tot_CI_lo, R_tot_CI_hi] + + if self.settings['debug']: + print('Process: ' + str(process)) + print('T_D: ' + str(T_D)) + print('tau_R: ' + str(tau_R)) + print('R_tot: ' + str(R_tot)) + print('R_tot_CI: ' + str(R_tot_CI)) + print('opt_number_of_bins_d: ' + str(opt_number_of_bins_d)) + print('opt_scaling_k: ' + str(opt_scaling_k)) + print('opt_first_bin_size: ' + str(opt_first_bin_size)) + print('firing_rate: ' + str(firing_rate)) + print('recording_length: ' + str(recording_length)) + print('H_spiking: ' + str(H_spiking)) + + # create output dict + results = {'Process': process, + 'estimation_method': self.settings['estimation_method'], + 'T_D': T_D, + 'tau_R': tau_R, + 'R_tot': R_tot, + 'R_tot_CI': R_tot_CI, + 'AIS_tot': R_tot * H_spiking, + 'opt_number_of_bins_d': opt_number_of_bins_d, + 'opt_scaling_k': opt_scaling_k, + 'opt_first_bin_size': opt_first_bin_size, + 'history_dependence': self.history_dependence, + 'firing_rate': firing_rate, + 'recording_length': recording_length, + 'H_spiking': H_spiking, + 'max_R': max_Rs} + + if self.settings['analyse_auto_MI']: + results['auto_MI'] = self.auto_MI.get('auto_MI') + results['auto_MI_delays'] = self.auto_MI.get('delay') + + results_d = DotDict(results) + + return results_d
+ +
[docs] def remove_subresults_single_process(self): + """delete results from self from single process""" + + del self.bs_history_dependence + del self.embedding_maximising_R_at_T + del self.history_dependence + del self.max_R + del self.max_Rs + del self.max_R_T + del self.process + # del self.T_D + if self.settings['analyse_auto_MI']: + del self.auto_MI + del self.H_spiking + if self.settings['estimation_method'] == 'bbc': + del self.bbc_term
+
+ +
+
+
+
+ +
+
+ + + + \ No newline at end of file diff --git a/docs/html/_modules/idtxl/estimators_Rudelt.html b/docs/html/_modules/idtxl/estimators_Rudelt.html new file mode 100644 index 00000000..c4d86d52 --- /dev/null +++ b/docs/html/_modules/idtxl/estimators_Rudelt.html @@ -0,0 +1,1217 @@ + + + + + + + + idtxl.estimators_Rudelt — IDTxl 1.2.1 documentation + + + + + + + + + + + + + + + + +
+
+
+
+ +

Source code for idtxl.estimators_Rudelt

+"""Provide HDE estimators."""
+
+import logging
+import numpy as np
+from scipy.optimize import newton, minimize
+import sys
+from sys import stderr
+from idtxl.estimator import Estimator
+import idtxl.hde_utils as utl
+from collections import Counter
+import mpmath as mp
+
+FAST_EMBEDDING_AVAILABLE = True
+try:
+    import idtxl.hde_fast_embedding as fast_emb
+except:
+    FAST_EMBEDDING_AVAILABLE = False
+    print("""
+    Error importing Cython fast embedding module. Continuing with slow Python implementation.\n
+    This may take a long time.\n
+    """, file=stderr, flush=True)
+
+
+logger = logging.getLogger(__name__)
+
+
+
[docs]class RudeltAbstractEstimator(Estimator): + """ + Abstract class for implementation of nsb and plugin estimators from Rudelt. + + Abstract class for implementation of nsb and plugin estimators, child classes + implement estimators for mutual information (MI) . + + References: + + [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding + optimization reveals long-lasting history dependence in + neural spiking activity, 2021, PLOS Computational Biology, 17(6) + + [2]: https://github.com/Priesemann-Group/hdestimator + + implemented in idtxl by Michael Lindner, Göttingen 2021 + + Args: + settings : dict + - embedding_step_size : float [optional] + Step size delta t (in seconds) with which the window is slid through the data + (default = 0.005). + - normalise : bool [optional] + rebase spike times to zero + (default=True) + - return_averaged_R : bool [optional] + If set to True, compute R̂tot as the average over R̂(T ) for T ∈ [T̂D, Tmax ] instead of + R̂tot = R(T̂D ). If set to True, the setting for number_of_bootstraps_R_tot is ignored and + set to 0 + (default=True) + """ + + def __init__(self, settings=None): + # check settings + settings = self._check_settings() + # import given settings + self.settings = settings.copy() + + # Get defaults for estimator settings + self.settings.setdefault('normalize', True) + self.settings.setdefault('embedding_step_size', 0.005) + self.settings.setdefault('return_averaged_R', True) + + # check settings + self._check_input_settings() + +
[docs] def is_parallel(self): + return False
+ +
[docs] def is_analytic_null_estimator(self): + return False
+ + def _check_settings(self, settings=None): + """Set default for settings dictionary. + + Check if settings dictionary is None. If None, initialise an empty + dictionary. If not None check if type is dictionary. Function should be + called before setting default values. + """ + if settings is None: + return {} + elif type(settings) is not dict: + raise TypeError('settings should be a dictionary.') + else: + return settings + + def _check_input_settings(self): + + # check that required settings are defined + required_settings = ['normalize', + 'embedding_step_size', + 'return_averaged_R'] + + # check if all settings are defined + for required_setting in required_settings: + if not required_setting in self.settings: + sys.exit("Error in settings file: {} is not defined. Aborting.".format(required_setting)) + + assert (isinstance(self.settings['normalize'], bool)), \ + "Error: setting 'normalize' needs to be boolean but is defined as {0}. " \ + "Aborting.".format(type(self.settings['normalize'])) + + assert (isinstance(self.settings['return_averaged_R'], bool)),\ + "Error: setting 'return_averaged_R' needs to be boolean but is " \ + "defined as {0}. Aborting.".format(type(self.settings['normalize'])) + + assert (isinstance(self.settings['embedding_step_size'], float)),\ + "Error: setting 'embedding_step_size' " \ + "needs to be float but is defined " \ + "as {0}. Aborting.".format(type(self.settings['embedding_step_size'])) + + def _check_estimator_inputs(self, + symbol_array, + past_symbol_array, + current_symbol_array, + bbc_tolerance): + assert (isinstance(symbol_array, np.ndarray)), \ + "Error: symbol_array needs to be a numpy array but is defines as {0}." \ + "Aborting.".format(type(symbol_array)) + + if past_symbol_array is not None: + assert (isinstance(past_symbol_array, np.ndarray)), \ + "Error: past_symbol_array needs to be a numpy array but is defines as {0}." \ + "Aborting.".format(type(past_symbol_array)) + assert (len(past_symbol_array) == len(symbol_array)), \ + "Error: symbol_array and past_symbol_array need to have the same length but have:" \ + "len(symbol_array): {0} len(past_symbol_array): {1}. " \ + "Aborting". format(len(symbol_array), len(past_symbol_array)) + + if current_symbol_array is not None: + assert (isinstance(current_symbol_array, np.ndarray)), \ + "Error: current_symbol_array needs to be a numpy array but is defines as {0}." \ + "Aborting.".format(type(current_symbol_array)) + assert (len(current_symbol_array) == len(symbol_array)), \ + "Error: symbol_array and current_symbol_array need to have the same length but have:" \ + "len(symbol_array): {0} len(current_symbol_array): {1}. " \ + "Aborting".format(len(symbol_array), len(current_symbol_array)) + + if bbc_tolerance is not None: + assert (isinstance(bbc_tolerance, np.ndarray)), \ + "Error: symbol array needs to be a numpy array but is defines as {0}." \ + "Aborting.".format(type(current_symbol_array)) + + def _ensure_one_dim(self, var): + """ + check if array is 1D + """ + var = np.squeeze(var) + assert (var.ndim == 1), "Input variable needs to be one dimensional. Aborting" + +
[docs] def get_past_range(self, number_of_bins_d, first_bin_size, scaling_k): + """ + Get the past range T of the embedding, based on the parameters d, tau_1 and k. + """ + + return np.sum([first_bin_size * 10 ** ((number_of_bins_d - i) * scaling_k) + for i in range(1, number_of_bins_d + 1)])
+ +
[docs] def get_window_delimiters(self, number_of_bins_d, scaling_k, first_bin_size): + """ + Get delimiters of the window, used to describe the embedding. The + window includes both the past embedding and the response. + + The delimiters are times, relative to the first bin, that separate + two consequent bins. + """ + + bin_sizes = [first_bin_size * 10 ** ((number_of_bins_d - i) * scaling_k) + for i in range(1, number_of_bins_d + 1)] + window_delimiters = [sum([bin_sizes[j] for j in range(i)]) + for i in range(1, number_of_bins_d + 1)] + window_delimiters.append(window_delimiters[number_of_bins_d - 1] + self.settings['embedding_step_size']) + return window_delimiters
+ +
[docs] def get_median_number_of_spikes_per_bin(self, raw_symbols): + """ + Given raw symbols (in which the number of spikes per bin are counted, + ie not necessarily binary quantity), get the median number of spikes + for each bin, among all symbols obtained by the embedding. + """ + + # number_of_bins here is number_of_bins_d + 1, + # as it here includes not only the bins of the embedding but also the response + number_of_bins = len(raw_symbols[0]) + + spike_counts_per_bin = [[] for i in range(number_of_bins)] + + for raw_symbol in raw_symbols: + for i in range(number_of_bins): + spike_counts_per_bin[i] += [raw_symbol[i]] + + return [np.median(spike_counts_per_bin[i]) for i in range(number_of_bins)]
+ +
[docs] def symbol_binary_to_array(self, symbol_binary, number_of_bins_d): + """ + Given a binary representation of a symbol (cf symbol_array_to_binary), + convert it back into its array-representation. + """ + + # assert 2 ** number_of_bins_d > symbol_binary + + spikes_in_window = np.zeros(number_of_bins_d) + for i in range(0, number_of_bins_d): + b = 2 ** (number_of_bins_d - 1 - i) + if b <= symbol_binary: + spikes_in_window[i] = 1 + symbol_binary -= b + return spikes_in_window
+ +
[docs] def symbol_array_to_binary(self, spikes_in_window, number_of_bins_d): + """ + Given an array of 1s and 0s, representing spikes and the absence + thereof, read the array as a binary number to obtain a + (base 10) integer. + """ + + # assert len(spikes_in_window) == number_of_bins_d + + # TODO check if it makes sense to use len(spikes_in_window) + # directly, to avoid mismatch as well as confusion + # as number_of_bins_d here can also be number_of_bins + # as in get_median_number_of_spikes_per_bin, ie + # including the response + + return sum([2 ** (number_of_bins_d - i - 1) * spikes_in_window[i] + for i in range(0, number_of_bins_d)])
+ +
[docs] def get_raw_symbols(self, + spike_times, + embedding, + first_bin_size): + """ + Get the raw symbols (in which the number of spikes per bin are counted, + ie not necessarily binary quantity), as obtained by applying the + embedding. + """ + + past_range_T, number_of_bins_d, scaling_k = embedding + + # the window is the embedding plus the response, + # ie the embedding and one additional bin of size embedding_step_size + window_delimiters = self.get_window_delimiters(number_of_bins_d, + scaling_k, + first_bin_size) + window_length = window_delimiters[-1] + num_spike_times = len(spike_times) + last_spike_time = spike_times[-1] + + num_symbols = int((last_spike_time - window_length) / self.settings['embedding_step_size']) + + raw_symbols = [] + + time = 0 + spike_index_lo = 0 + + for symbol_num in range(num_symbols): + while spike_index_lo < num_spike_times and spike_times[spike_index_lo] < time: + spike_index_lo += 1 + spike_index_hi = spike_index_lo + while (spike_index_hi < num_spike_times and + spike_times[spike_index_hi] < time + window_length): + spike_index_hi += 1 + + spikes_in_window = np.zeros(number_of_bins_d + 1) + + embedding_bin_index = 0 + for spike_index in range(spike_index_lo, spike_index_hi): + while (spike_times[spike_index] > time + window_delimiters[embedding_bin_index]): + embedding_bin_index += 1 + spikes_in_window[embedding_bin_index] += 1 + + raw_symbols += [spikes_in_window] + + time += self.settings['embedding_step_size'] + + return raw_symbols
+ +
[docs] def get_symbol_counts(self, symbol_array): + """ + Count how often symbols occur + """ + + symbol_counts = Counter() + for symbol in np.unique(symbol_array): + symbol_counts[symbol] += len(np.where(symbol_array == symbol)[0]) + + return symbol_counts
+ +
[docs] def get_multiplicities(self, symbol_counts, alphabet_size): + """ + Get the multiplicities of some given symbol counts. + + To estimate the entropy of a system, it is only important how + often a symbol/ event occurs (the probability that it occurs), not + what it represents. Therefore, computations can be simplified by + summarizing symbols by their frequency, as represented by the + multiplicities. + """ + + mk = dict(((value, 0) for value in symbol_counts.values())) + number_of_observed_symbols = np.count_nonzero([value for value in symbol_counts.values()]) + + for symbol in symbol_counts.keys(): + mk[symbol_counts[symbol]] += 1 + + # the number of symbols that have not been observed in the data + mk[0] = alphabet_size - number_of_observed_symbols + + return mk
+ + +
[docs]class RudeltAbstractNSBEstimator(RudeltAbstractEstimator): + """Abstract class for implementation of NSB estimators from Rudelt. + + Abstract class for implementation of Nemenman-Shafee-Bialek (NSB) + estimators, child classes implement nsb estimators for mutual information + (MI). + + implemented in idtxl by Michael Lindner, Göttingen 2021 + + References: + + [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding + optimization reveals long-lasting history dependence in + neural spiking activity, 2021, PLOS Computational Biology, 17(6) + [2]: I. Nemenman, F. Shafee, W. Bialek: Entropy and inference, + revisited. In T.G. Dietterich, S. Becker, and Z. Ghahramani, + editors, Advances in Neural Information Processing Systems 14, + Cambridge, MA, 2002. MIT Press. + + Args: + settings : dict + - embedding_step_size : float [optional] + Step size delta t (in seconds) with which the window is slid through the data + (default = 0.005). + - normalise : bool [optional] + rebase spike times to zero + (default=True) + - return_averaged_R : bool [optional] + If set to True, compute R̂tot as the average over R̂(T ) for T ∈ [T̂D, Tmax ] instead of + R̂tot = R(T̂D ). If set to True, the setting for number_of_bootstraps_R_tot is ignored and + set to 0 + (default=True) + """ + + def __init__(self, settings=None): + # Set default estimator settings. + super().__init__(settings) + +
[docs] def d_xi(self, beta, K): + """ + First derivative of xi(beta). + + xi(beta) is the entropy of the system when no data has been observed. + d_xi is the prior for the nsb estimator + """ + + return K * mp.psi(1, K * beta + 1.) - mp.psi(1, beta + 1.)
+ +
[docs] def d2_xi(self, beta, K): + """ + Second derivative of xi(beta) (cf d_xi). + """ + + return K ** 2 * mp.psi(2, K * beta + 1) - mp.psi(2, beta + 1)
+ +
[docs] def d3_xi(self, beta, K): + """ + Third derivative of xi(beta) (cf d_xi). + """ + + return K ** 3 * mp.psi(3, K * beta + 1) - mp.psi(3, beta + 1)
+ +
[docs] def rho(self, beta, mk, K, N): + """ + rho(beta, data) is the Dirichlet multinomial likelihood. + + rho(beta, data) together with the d_xi(beta) make up + the posterior for the nsb estimator + """ + + return np.prod([mp.power(mp.rf(beta, np.double(n)), mk[n]) for n in mk]) / mp.rf(K * beta, + np.double(N))
+ +
[docs] def unnormalized_posterior(self, beta, mk, K, N): + """ + The (unnormalized) posterior in the nsb estimator. + + Product of the likelihood rho and the prior d_xi; + the normalizing factor is given by the marginal likelihood + """ + + return self.rho(beta, mk, K, N) * self.d_xi(beta, K)
+ +
[docs] def d_log_rho(self, beta, mk, K, N): + """ + First derivate of the logarithm of the Dirichlet multinomial likelihood. + """ + + return K * (mp.psi(0, K * beta) - mp.psi(0, K * beta + N)) - K * mp.psi(0, beta) \ + + np.sum((mk[n] * mp.psi(0, n + beta) for n in mk))
+ +
[docs] def d2_log_rho(self, beta, mk, K, N): + """ + Second derivate of the logarithm of the Dirichlet multinomial likelihood. + """ + + return K ** 2 * (mp.psi(1, K * beta) - mp.psi(1, K * beta + N)) - K * mp.psi(1, beta) \ + + np.sum((mk[n] * mp.psi(1, n + beta) for n in mk))
+ +
[docs] def d_log_rho_xi(self, beta, mk, K, N): + """ + First derivative of the logarithm of the nsb (unnormalized) posterior. + """ + + return self.d_log_rho(beta, mk, K, N) + self.d2_xi(beta, K) / self.d_xi(beta, K)
+ +
[docs] def d2_log_rho_xi(self, beta, mk, K, N): + """ + Second derivative of the logarithm of the nsb (unnormalized) posterior. + """ + + return self.d2_log_rho(beta, mk, K, N) \ + + (self.d3_xi(beta, K) * self.d_xi(beta, K) - self.d2_xi(beta, K) ** 2) / self.d_xi(beta, K) ** 2
+ +
[docs] def log_likelihood_DP_alpha(self, a, K1, N): + """ + Alpha-dependent terms of the log-likelihood of a Dirichlet Process. + """ + + return (K1 - 1.) * mp.log(a) - mp.log(mp.rf(a + 1., N - 1.))
+ +
[docs] def get_beta_MAP(self, mk, K, N): + """ + Get the maximum a posteriori (MAP) value for beta. + + Provides the location of the peak, around which we integrate. + + beta_MAP is the value for beta for which the posterior of the + NSB estimator is maximised (or, equivalently, of the logarithm + thereof, as computed here). + """ + + K1 = K - mk[0] + + if self.d_log_rho(10 ** 1, mk, K, N) > 0: + print("Warning: No ML parameter was found.", file=stderr, flush=True) + beta_MAP = np.float('nan') + else: + try: + # first guess computed via posterior of Dirichlet process + DP_est = self.alpha_ML(mk, K1, N) / K + beta_MAP = newton(lambda beta: float(self.d_log_rho_xi(beta, mk, K, N)), DP_est, + lambda beta: float(self.d2_log_rho_xi(beta, mk, K, N)), + tol=5e-08, maxiter=500) + except: + print("Warning: No ML parameter was found. (Exception caught.)", file=stderr, flush=True) + beta_MAP = np.float('nan') + return beta_MAP
+ +
[docs] def alpha_ML(self, mk, K1, N): + """ + Compute first guess for the beta_MAP (cf get_beta_MAP) parameter + via the posterior of a Dirichlet process. + """ + + mk = utl.remove_key(mk, 0) + # rnsum = np.array([_logvarrhoi_DP(n, mk[n]) for n in mk]).sum() + estlist = [N * (K1 - 1.) / r / (N - K1) for r in np.arange(6., 1.5, -0.5)] + varrholist = {} + for a in estlist: + # varrholist[_logvarrho_DP(a, rnsum, K1, N)] = a + varrholist[self.log_likelihood_DP_alpha(a, K1, N)] = a + a_est = varrholist[max(varrholist.keys())] + res = minimize(lambda a: -self.log_likelihood_DP_alpha(a[0], K1, N), + a_est, method='Nelder-Mead') + return res.x[0]
+ +
[docs] def get_integration_bounds(self, mk, K, N): + """ + Find the integration bounds for the estimator. + + Typically it is a delta-like distribution so it is sufficient + to integrate around this peak. (If not this function is not + called.) + """ + + beta_MAP = self.get_beta_MAP(mk, K, N) + if np.isnan(beta_MAP): + intbounds = np.float('nan') + else: + std = np.sqrt(- self.d2_log_rho_xi(beta_MAP, mk, K, N) ** (-1)) + intbounds = [np.float(np.amax([10 ** (-50), beta_MAP - 8 * std])), + np.float(beta_MAP + 8 * std)] + + return intbounds
+ +
[docs] def H1(self, beta, mk, K, N): + """ + Compute the first moment (expectation value) of the entropy H. + + H is the entropy one obtains with a symmetric Dirichlet prior + with concentration parameter beta and a multinomial likelihood. + """ + + norm = N + beta * K + return mp.psi(0, norm + 1) - np.sum((mk[n] * (n + beta) * + mp.psi(0, n + beta + 1) for n in mk)) / norm
+ +
[docs] def nsb_entropy(self, mk, K, N): + """ + Estimate the entropy of a system using the NSB estimator. + + :param mk: multiplicities + :param K: number of possible symbols/ state space of the system + :param N: total number of observed symbols + """ + + mp.pretty = True + + # find the concentration parameter beta + # for which the posterior is maximised + # to integrate around this peak + integration_bounds = self.get_integration_bounds(mk, K, N) + + if np.any(np.isnan(integration_bounds)): + # if no peak was found, integrate over the whole range + # by reformulating beta into w so that the range goes from 0 to 1 + # instead of from 1 to infinity + + integration_bounds = [0, 1] + + def unnormalized_posterior_w(w, mk, K, N): + sbeta = w / (1 - w) + beta = sbeta * sbeta + return self.unnormalized_posterior(beta, mk, K, N) * 2 * sbeta / (1 - w) / (1 - w) + + def H1_w(w, mk, K, N): + sbeta = w / (1 - w) + beta = sbeta * sbeta + return self.H1(w, mk, K, N) + + marginal_likelihood = mp.quadgl(lambda w: unnormalized_posterior_w(w, mk, K, N), + integration_bounds) + H_nsb = mp.quadgl(lambda w: H1_w(w, mk, K, N) * unnormalized_posterior_w(w, mk, K, N), + integration_bounds) / marginal_likelihood + + else: + # integrate over the possible entropies, weighted such that every entropy is equally likely + # and normalize with the marginal likelihood + marginal_likelihood = mp.quadgl(lambda beta: self.unnormalized_posterior(beta, mk, K, N), + integration_bounds) + H_nsb = mp.quadgl(lambda beta: self.H1(beta, mk, K, N) * self.unnormalized_posterior(beta, mk, K, N), + integration_bounds) / marginal_likelihood + + return H_nsb
+ + +
[docs]class RudeltNSBEstimatorSymbolsMI(RudeltAbstractNSBEstimator): + """History dependence NSB estimator + + Calculate the mutual information (MI) of one variable depending on its past + using NSB estimator. See parent class for references. + + implemented in idtxl by Michael Lindner, Göttingen 2021 + + Args: + settings : dict + - embedding_step_size : float [optional] + Step size delta t (in seconds) with which the window is slid through the data + (default = 0.005). + - normalise : bool [optional] + rebase spike times to zero + (default=True) + - return_averaged_R : bool [optional] + If set to True, compute R̂tot as the average over R̂(T ) for T ∈ [T̂D, Tmax ] instead of + R̂tot = R(T̂D ). If set to True, the setting for number_of_bootstraps_R_tot is ignored and + set to 0 + (default=True) + """ + + def __init__(self, settings=None): + # Set default estimator settings. + super().__init__(settings) + +
[docs] def nsb_estimator(self, + symbol_counts, + past_symbol_counts, + alphabet_size, + alphabet_size_past, + H_uncond): + """ + Estimate the entropy of a system using the NSB estimator. + """ + + mk = self.get_multiplicities(symbol_counts, alphabet_size) + mk_past = self.get_multiplicities(past_symbol_counts, alphabet_size_past) + + N = sum((mk[n] * n for n in mk.keys())) + + H_nsb_joint = self.nsb_entropy(mk, alphabet_size, N) + H_nsb_past = self.nsb_entropy(mk_past, alphabet_size_past, N) + + H_nsb_cond = H_nsb_joint - H_nsb_past + I_nsb = H_uncond - H_nsb_cond + R_nsb = I_nsb / H_uncond + + return I_nsb, R_nsb
+ +
[docs] def estimate(self, symbol_array, past_symbol_array, current_symbol_array): + """Estimate mutual information using NSB estimator. + + Args: + symbol_array : 1D numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + past_symbol_array : numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + current_symbol_array : numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + + Returns: + I (float) + MI (AIS) + R (float) + MI / H_uncond (History dependence) + """ + + self._check_estimator_inputs(symbol_array, + past_symbol_array, + current_symbol_array, + None) + + self._ensure_one_dim(symbol_array) + self._ensure_one_dim(past_symbol_array) + self._ensure_one_dim(current_symbol_array) + + symbol_counts = self.get_symbol_counts(symbol_array) + + current_symbol_counts = self.get_symbol_counts(current_symbol_array) + H_uncond = utl.get_H_spiking(symbol_counts) + + past_symbol_counts = self.get_symbol_counts(past_symbol_array) + + number_of_bins_d_join = len(list(np.binary_repr(np.max(symbol_array)))) + + alphabet_size_past = 2 ** int(number_of_bins_d_join - 1) # K for past activity + alphabet_size = alphabet_size_past * 2 # K + + I, R = self.nsb_estimator(symbol_counts, + past_symbol_counts, + alphabet_size, + alphabet_size_past, + H_uncond) + + return np.float(I), np.float(R)
+ + +
[docs]class RudeltPluginEstimatorSymbolsMI(RudeltAbstractEstimator): + """Plugin History dependence estimator + + Calculate the mutual information (MI) of one variable depending on its past + using plugin estimator. See parent class for references. + + implemented in idtxl by Michael Lindner, Göttingen 2021 + + Args: + settings : dict + - embedding_step_size : float [optional] - Step size delta t (in seconds) with which the window is slid + through the data (default = 0.005). + - normalise : bool [optional] - rebase spike times to zero (default=True) + - return_averaged_R : bool [optional] - rebase spike times to zero (default=True) + + """ + +
[docs] def plugin_entropy(self, mk, N): + """ + Estimate the entropy of a system using the Plugin estimator. + + (In principle this is the same function as utl.get_shannon_entropy, + only here it is a function of the multiplicities, not the probabilities.) + + :param mk: multiplicities + :param N: total number of observed symbols + """ + + mk = utl.remove_key(mk, 0) + return - sum((mk[n] * (n / N) * np.log(n / N) for n in mk))
+ +
[docs] def plugin_estimator(self, + symbol_counts, + past_symbol_counts, + alphabet_size, + alphabet_size_past, + H_uncond): + """ + Estimate the entropy of a system using the BBC estimator. + """ + + mk = self.get_multiplicities(symbol_counts, alphabet_size) + mk_past = self.get_multiplicities(past_symbol_counts, alphabet_size_past) + + N = sum((mk[n] * n for n in mk.keys())) + + H_plugin_joint = self.plugin_entropy(mk, N) + H_plugin_past = self.plugin_entropy(mk_past, N) + + H_plugin_cond = H_plugin_joint - H_plugin_past + I_plugin = H_uncond - H_plugin_cond + R_plugin = I_plugin / H_uncond + + return I_plugin, R_plugin
+ +
[docs] def estimate(self, symbol_array, past_symbol_array, current_symbol_array): + """Estimate mutual information using plugin estimator. + + Args: + symbol_array : 1D numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + past_symbol_array : numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + current_symbol_array : numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + + Returns: + I (float) + MI (AIS) + R (float) + MI / H_uncond (History dependence) + """ + + self._check_estimator_inputs(symbol_array, + past_symbol_array, + current_symbol_array, + None) + + self._ensure_one_dim(symbol_array) + self._ensure_one_dim(past_symbol_array) + self._ensure_one_dim(current_symbol_array) + + symbol_counts = self.get_symbol_counts(symbol_array) + + current_symbol_counts = self.get_symbol_counts(current_symbol_array) + # H_uncond_orig = utl.get_H_spiking(symbol_counts) + H_uncond = utl.get_H_spiking(symbol_counts) + + # past_symbol_counts = utl.get_past_symbol_counts(symbol_counts) + past_symbol_counts = self.get_symbol_counts(past_symbol_array) + + # number_of_bins_d_join = np.array(list(np.binary_repr(np.max(past_symbol_array)))).astype(np.int8) + number_of_bins_d_join = len(list(np.binary_repr(np.max(symbol_array)))) + + alphabet_size_past = 2 ** int(number_of_bins_d_join - 1) # K for past activity + alphabet_size = alphabet_size_past * 2 # K + + I, R = self.plugin_estimator(symbol_counts, + past_symbol_counts, + alphabet_size, + alphabet_size_past, + H_uncond) + + return np.float(I), np.float(R)
+ + +
[docs]class RudeltBBCEstimator(RudeltAbstractEstimator): + """ + Bayesian bias criterion (BBC) Estimator using NSB and Plugin estimator + + Calculate the mutual information (MI) of one variable depending on its past + using nsb and plugin estimator and check if bias criterion is passed. + See parent class for references. + + implemented in idtxl by Michael Lindner, Göttingen 2021 + + Args: + settings : dict + - embedding_step_size : float [optional] + Step size delta t (in seconds) with which the window is slid through the data + (default = 0.005). + - normalise : bool [optional] + rebase spike times to zero + (default=True) + - return_averaged_R : bool [optional] + If set to True, compute R̂tot as the average over R̂(T ) for T ∈ [T̂D, Tmax ] instead of + R̂tot = R(T̂D ). If set to True, the setting for number_of_bootstraps_R_tot is ignored and + set to 0 + (default=True) + """ + +
[docs] def bayesian_bias_criterion(self, R_nsb, R_plugin, bbc_tolerance): + """ + Get whether the Bayesian bias criterion (bbc) is passed. + + :param R_nsb: history dependence computed with NSB estimator + :param R_plugin: history dependence computed with plugin estimator + :param bbc_tolerance: tolerance for the Bayesian bias criterion + """ + + if self.get_bbc_term(R_nsb, R_plugin) < bbc_tolerance: + return 1 + else: + return 0
+ +
[docs] def get_bbc_term(self, R_nsb, R_plugin): + """ + Get the bbc tolerance-independent term of the Bayesian bias + criterion (bbc). + + :param R_nsb: history dependence computed with NSB estimator + :param R_plugin: history dependence computed with plugin estimator + """ + + if R_nsb > 0: + return np.abs(R_nsb - R_plugin) / R_nsb + else: + return np.inf
+ +
[docs] def estimate(self, symbol_array, past_symbol_array, current_symbol_array, bbc_tolerance=None): + """ + Calculate the mutual information (MI) of one variable depending on its past + using nsb and plugin estimator and check if bias criterion is passed/ + + Args: + symbol_array : 1D numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + past_symbol_array : numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + current_symbol_array : numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + + Returns: + I (float) + MI (AIS) + R (float) + MI / H_uncond (History dependence) + bbc_term (float) + bbc tolerance-independent term of the Bayesian bias + criterion (bbc) + """ + + self._check_estimator_inputs(symbol_array, + past_symbol_array, + current_symbol_array, + bbc_tolerance) + + self._ensure_one_dim(symbol_array) + self._ensure_one_dim(past_symbol_array) + self._ensure_one_dim(current_symbol_array) + + estnsb = RudeltNSBEstimatorSymbolsMI() + I_nsb, R_nsb = estnsb.estimate(symbol_array, past_symbol_array, current_symbol_array) + + estplugin = RudeltPluginEstimatorSymbolsMI() + I_plugin, R_plugin = estplugin.estimate(symbol_array, past_symbol_array, current_symbol_array) + + if not bbc_tolerance == None: + if self.bayesian_bias_criterion(R_nsb, R_plugin, bbc_tolerance): + return np.float(I_nsb), np.float(R_nsb) + else: + return None + else: + return np.float(I_nsb), np.float(R_nsb), np.float(self.get_bbc_term(R_nsb, + R_plugin))
+ + +
[docs]class RudeltShufflingEstimator(RudeltAbstractEstimator): + """ + Estimate the history dependence in a spike train using the shuffling estimator. + + See parent class for references. + + implemented in idtxl by Michael Lindner, Göttingen 2021 + """ + +
[docs] def get_P_X_uncond(self, number_of_symbols): + """ + Compute P(X), the probability of the current activity using + the plug-in estimator. + """ + + return [number_of_symbols[0] / sum(number_of_symbols), + number_of_symbols[1] / sum(number_of_symbols)]
+ +
[docs] def get_P_X_past_uncond(self, past_symbol_counts, number_of_symbols): + """ + Compute P(X_past), the probability of the past activity using + the plug-in estimator. + """ + + P_X_past_uncond = {} + for response in [0, 1]: + for symbol in past_symbol_counts[response]: + if symbol in P_X_past_uncond: + P_X_past_uncond[symbol] += past_symbol_counts[response][symbol] + else: + P_X_past_uncond[symbol] = past_symbol_counts[response][symbol] + number_of_symbols_uncond = sum(number_of_symbols) + + for symbol in P_X_past_uncond: + P_X_past_uncond[symbol] /= number_of_symbols_uncond + return P_X_past_uncond
+ +
[docs] def get_P_X_past_cond_X(self, past_symbol_counts, number_of_symbols): + """ + Compute P(X_past | X), the probability of the past activity conditioned + on the response X using the plug-in estimator. + """ + + P_X_past_cond_X = [{}, {}] + for response in [0, 1]: + for symbol in past_symbol_counts[response]: + P_X_past_cond_X[response][symbol] \ + = past_symbol_counts[response][symbol] / number_of_symbols[response] + return P_X_past_cond_X
+ +
[docs] def get_H0_X_past_cond_X_eq_x(self, marginal_probabilities, number_of_bins_d): + """ + Compute H_0(X_past | X = x), cf get_H0_X_past_cond_X. + """ + return utl.get_shannon_entropy(marginal_probabilities) \ + + utl.get_shannon_entropy(1 - marginal_probabilities)
+ +
[docs] def get_H0_X_past_cond_X(self, marginal_probabilities, number_of_bins_d, P_X_uncond): + """ + Compute H_0(X_past | X), the estimate of the entropy for the past + symbols given a response, under the assumption that activity in + the past contributes independently towards the response. + """ + H0_X_past_cond_X_eq_x = [0, 0] + for response in [0, 1]: + H0_X_past_cond_X_eq_x[response] \ + = self.get_H0_X_past_cond_X_eq_x(marginal_probabilities[response], + number_of_bins_d) + return sum([P_X_uncond[response] * H0_X_past_cond_X_eq_x[response] for response in [0, 1]])
+ +
[docs] def get_H_X_past_uncond(self, P_X_past_uncond): + """ + Compute H(X_past), the plug-in estimate of the entropy for the past symbols, given + their probabilities. + """ + + return utl.get_shannon_entropy(P_X_past_uncond.values())
+ +
[docs] def get_H_X_past_cond_X(self, P_X_uncond, P_X_past_cond_X): + """ + Compute H(X_past | X), the plug-in estimate of the conditional entropy for the past + symbols, conditioned on the response X, given their probabilities. + """ + + return sum((P_X_uncond[response] * self.get_H_X_past_uncond(P_X_past_cond_X[response]) + for response in [0, 1]))
+ +
[docs] def get_marginal_frequencies_of_spikes_in_bins(self, symbol_counts, number_of_bins_d): + """ + Compute for each past bin 1...d the sum of spikes found in that bin across all + observed symbols. + """ + return np.array(sum((self.symbol_binary_to_array(symbol, number_of_bins_d) + * symbol_counts[symbol] + for symbol in symbol_counts)), dtype=int)
+ +
[docs] def get_shuffled_symbol_counts(self, symbol_counts, past_symbol_counts, number_of_bins_d, + number_of_symbols): + """ + Simulate new data by, for each past bin 1...d, permutating the activity + across all observed past_symbols (for a given response X). The marginal + probability of observing a spike given the response is thus preserved for + each past bin. + """ + number_of_spikes = sum(past_symbol_counts[1].values()) + + marginal_frequencies = [self.get_marginal_frequencies_of_spikes_in_bins(past_symbol_counts[response], + number_of_bins_d) + for response in [0, 1]] + + shuffled_past_symbols = [np.zeros(number_of_symbols[response]) for response in [0, 1]] + + for i in range(0, number_of_bins_d): + for response in [0, 1]: + shuffled_past_symbols[response] \ + += 2 ** (number_of_bins_d - i - 1) \ + * np.random.permutation(np.hstack((np.ones(marginal_frequencies[response][i]), + np.zeros(number_of_symbols[response] \ + - marginal_frequencies[response][i])))) + + for response in [0, 1]: + shuffled_past_symbols[response] = np.array(shuffled_past_symbols[response], dtype=int) + + shuffled_past_symbol_counts = [Counter(), Counter()] + + for response in [0, 1]: + for past_symbol in shuffled_past_symbols[response]: + shuffled_past_symbol_counts[response][past_symbol] += 1 + + marginal_probabilities = [marginal_frequencies[response] / number_of_symbols[response] + for response in [0, 1]] + + return shuffled_past_symbol_counts, marginal_probabilities
+ +
[docs] def shuffling_MI(self, symbol_counts, number_of_bins_d): + """ + Estimate the mutual information between current and past activity + in a spike train using the shuffling estimator. + + To obtain the shuffling estimate, compute the plug-in estimate and + a correction term to reduce its bias. + + For the plug-in estimate: + + - Extract the past_symbol_counts from the symbol_counts. + - I_plugin = H(X_past) - H(X_past | X) + + Notation: + + - X: current activity, aka response + - X_past: past activity + - P_X_uncond: P(X) + - P_X_past_uncond: P(X_past) + - P_X_past_cond_X: P(X_past | X) + - H_X_past_uncond: H(X_past) + - H_X_past_cond_X: H(X_past | X) + - I_plugin: plugin estimate of I(X_past; X) + + For the correction term: + + - Simulate additional data under the assumption that activity + in the past contributes independently towards the current activity. + - Compute the entropy under the assumptions of the model, which + due to its simplicity is easy to sample and the estimate unbiased + - Compute the entropy using the plug-in estimate, whose bias is + similar to that of the plug-in estimate on the original data + - Compute the correction term as the difference between the + unbiased and biased terms + + Notation: + + - P0_sh_X_past_cond_X: P_0,sh(X_past | X), equiv. to P(X_past | X) + on the shuffled data + - H0_X_past_cond_X: H_0(X_past | X), based on the model of independent + contributions + - H0_sh_X_past_cond_X: H_0,sh(X_past | X), based on + - P0_sh_X_past_cond_X, ie the plug-in estimate + - I_corr: the correction term to reduce the bias of I_plugin + + Args: + symbol_counts : iterable + the activity of a spike train is embedded into symbols, + whose occurrences are counted (cf emb.get_symbol_counts) + number_of_bins_d : int + the number of bins of the embedding + """ + + # plug-in estimate + past_symbol_counts = utl.get_past_symbol_counts(symbol_counts, merge=False) + number_of_symbols = [sum(past_symbol_counts[response].values()) for response in [0, 1]] + + P_X_uncond = self.get_P_X_uncond(number_of_symbols) + P_X_past_uncond = self.get_P_X_past_uncond(past_symbol_counts, number_of_symbols) + P_X_past_cond_X = self.get_P_X_past_cond_X(past_symbol_counts, number_of_symbols) + + H_X_past_uncond = self.get_H_X_past_uncond(P_X_past_uncond) + H_X_past_cond_X = self.get_H_X_past_cond_X(P_X_uncond, P_X_past_cond_X) + + I_plugin = H_X_past_uncond - H_X_past_cond_X + + # correction term + shuffled_past_symbol_counts, marginal_probabilities \ + = self.get_shuffled_symbol_counts(symbol_counts, past_symbol_counts, number_of_bins_d, + number_of_symbols) + + P0_sh_X_past_cond_X = self.get_P_X_past_cond_X(shuffled_past_symbol_counts, number_of_symbols) + + H0_X_past_cond_X = self.get_H0_X_past_cond_X(marginal_probabilities, number_of_bins_d, P_X_uncond) + H0_sh_X_past_cond_X = self.get_H_X_past_cond_X(P_X_uncond, P0_sh_X_past_cond_X) + + I_corr = H0_X_past_cond_X - H0_sh_X_past_cond_X + + # shuffling estimate + return I_plugin - I_corr
+ +
[docs] def estimate(self, symbol_array): + """ + Estimate the history dependence in a spike train using the shuffling estimator. + + Args: + symbol_array : 1D numpy array + realisations of symbols based on current and past states. + (first output of get_realisations_symbol from data_spiketimes object) + + Returns: + I (float) + MI (AIS) + R (float) + MI / H_uncond (History dependence) + """ + + self._check_estimator_inputs(symbol_array, + None, + None, + None) + + self._ensure_one_dim(symbol_array) + + symbol_counts = self.get_symbol_counts(symbol_array) + + # number_of_bins_d_join = np.array(list(np.binary_repr(np.max(symbol_array)))).astype(np.int8) + number_of_bins_d_join = len(list(np.binary_repr(np.max(symbol_array)))) + + H_uncond = utl.get_H_spiking(symbol_counts) + + I_sh = self.shuffling_MI(symbol_counts, + number_of_bins_d_join -1) + + R_sh = I_sh / H_uncond + + return I_sh, R_sh
+
+ +
+
+
+
+ +
+
+ + + + \ No newline at end of file diff --git a/docs/html/_modules/idtxl/results.html b/docs/html/_modules/idtxl/results.html index ac037c6c..1db75ca0 100644 --- a/docs/html/_modules/idtxl/results.html +++ b/docs/html/_modules/idtxl/results.html @@ -5,10 +5,10 @@ - idtxl.results — IDTxl 1.0 documentation - - - + idtxl.results — IDTxl 1.2.1 documentation + + + @@ -31,7 +31,7 @@

Navigation

  • modules |
  • - + @@ -48,13 +48,13 @@

    Source code for idtxl.results

     import warnings
     import copy as cp
     import numpy as np
    -from . import idtxl_utils as utils
    +from . import idtxl_utils as utils
     
     warnings.simplefilter(action='ignore', category=FutureWarning)
     MIN_INT = -sys.maxsize - 1  # minimum integer for initializing adj. matrix
     
     
    -class DotDict(dict):
    +
    [docs]class DotDict(dict): """Dictionary with dot-notation access to values. Provides the same functionality as a regular dict, but also allows @@ -74,7 +74,7 @@

    Source code for idtxl.results

         __setattr__ = dict.__setitem__
         __delattr__ = dict.__delitem__
     
    -    def __dir__(self):
    +    def __dir__(self):
             """Return dictionary keys as list of attributes."""
             return self.keys()
     
    @@ -95,13 +95,13 @@ 

    Source code for idtxl.results

     
         def __setstate__(self, state):
             # For un-pickling the object
    -        self.update(state)
    +        self.update(state)
    # self.__dict__ = self -class AdjacencyMatrix(): +
    [docs]class AdjacencyMatrix(): """Adjacency matrix representing inferred networks.""" - def __init__(self, n_nodes, weight_type): + def __init__(self, n_nodes, weight_type): self._edge_matrix = np.zeros((n_nodes, n_nodes), dtype=bool) self._weight_matrix = np.zeros((n_nodes, n_nodes), dtype=weight_type) if np.issubdtype(weight_type, np.integer): @@ -114,23 +114,23 @@

    Source code for idtxl.results

                 raise RuntimeError('Unknown weight data type {0}.'.format(
                     weight_type))
     
    -    def n_nodes(self):
    +
    [docs] def n_nodes(self): """Return number of nodes.""" - return self._edge_matrix.shape[0] + return self._edge_matrix.shape[0]
    - def n_edges(self): - return self._edge_matrix.sum() +
    [docs] def n_edges(self): + return self._edge_matrix.sum()
    - def add_edge(self, i, j, weight): +
    [docs] def add_edge(self, i, j, weight): """Add weighted edge (i, j) to adjacency matrix.""" if not np.issubdtype(type(weight), self._weight_type): raise TypeError( 'Can not add weight of type {0} to adjacency matrix of type ' '{1}.'.format(type(weight), self._weight_type)) self._edge_matrix[i, j] = True - self._weight_matrix[i, j] = weight + self._weight_matrix[i, j] = weight
    - def add_edge_list(self, i_list, j_list, weights): +
    [docs] def add_edge_list(self, i_list, j_list, weights): """Add multiple weighted edges (i, j) to adjacency matrix.""" if len(i_list) != len(j_list): raise RuntimeError( @@ -139,14 +139,14 @@

    Source code for idtxl.results

                 raise RuntimeError(
                     'Edge weights must have same length as edge indices.')
             for i, j, weight in zip(i_list, j_list, weights):
    -            self.add_edge(i, j, weight)
    +            self.add_edge(i, j, weight)
    - def print_matrix(self): +
    [docs] def print_matrix(self): """Print weight and edge matrix.""" print(self._edge_matrix) - print(self._weight_matrix) + print(self._weight_matrix)
    - def get_edge_list(self): +
    [docs] def get_edge_list(self): """Return list of weighted edges. Returns @@ -160,10 +160,10 @@

    Source code for idtxl.results

                     if self._edge_matrix[i, j]:
                         edge_list[ind] = (i, j, self._weight_matrix[i, j])
                         ind += 1
    -        return edge_list
    +        return edge_list
    -class Results(): +
    [docs]class Results(): """Parent class for results of network analysis algorithms. Provide a container for results of network analysis algorithms, e.g., @@ -185,7 +185,7 @@

    Source code for idtxl.results

                       before the estimation
         """
     
    -    def __init__(self, n_nodes, n_realisations, normalised):
    +    def __init__(self, n_nodes, n_realisations, normalised):
             self.settings = DotDict({})
             self.data_properties = DotDict({
                 'n_nodes': n_nodes,
    @@ -229,7 +229,7 @@ 

    Source code for idtxl.results

             else:
                 return False
     
    -    def combine_results(self, *results):
    +
    [docs] def combine_results(self, *results): """Combine multiple (partial) results objects. Combine a list of partial network analysis results into a single @@ -282,7 +282,7 @@

    Source code for idtxl.results

                             raise AttributeError(
                                 'Did not find any method attributes to combine '
                                 '(.single_proces or ._single_target).')
    -                self._add_single_result(p, results_to_add, r.settings)
    +                self._add_single_result(p, results_to_add, r.settings)
    [docs]class ResultsSingleProcessAnalysis(Results): """Store results of single process analysis. @@ -319,7 +319,7 @@

    Source code for idtxl.results

                 list of analysed processes
         """
     
    -    def __init__(self, n_nodes, n_realisations, normalised):
    +    def __init__(self, n_nodes, n_realisations, normalised):
             super().__init__(n_nodes, n_realisations, normalised)
             self.processes_analysed = []
             self._single_process = {}
    @@ -435,9 +435,9 @@ 

    Source code for idtxl.results

             return significant_processes
    -class ResultsNetworkAnalysis(Results): +
    [docs]class ResultsNetworkAnalysis(Results): - def __init__(self, n_nodes, n_realisations, normalised): + def __init__(self, n_nodes, n_realisations, normalised): super().__init__(n_nodes, n_realisations, normalised) self._single_target = {} self.targets_analysed = [] @@ -459,7 +459,7 @@

    Source code for idtxl.results

             self._single_target[target] = DotDict(results)
             self.targets_analysed = list(self._single_target.keys())
     
    -    def get_single_target(self, target, fdr=True):
    +
    [docs] def get_single_target(self, target, fdr=True): """Return results for a single target in the network. Return results for individual processes, contains for each process @@ -522,9 +522,9 @@

    Source code for idtxl.results

                     raise RuntimeError('No results have been added.')
                 except KeyError:
                     raise RuntimeError(
    -                    'No results for target {0}.'.format(target))
    +                    'No results for target {0}.'.format(target))
    - def get_target_sources(self, target, fdr=True): +
    [docs] def get_target_sources(self, target, fdr=True): """Return list of sources (parents) for given target. Args: @@ -535,7 +535,7 @@

    Source code for idtxl.results

                     (default=True)
             """
             v = self.get_single_target(target, fdr)['selected_vars_sources']
    -        return np.unique(np.array([s[0] for s in v]))
    +        return np.unique(np.array([s[0] for s in v]))
    [docs]class ResultsNetworkInference(ResultsNetworkAnalysis): @@ -572,7 +572,7 @@

    Source code for idtxl.results

                 list of analysed targets
         """
     
    -    def __init__(self, n_nodes, n_realisations, normalised):
    +    def __init__(self, n_nodes, n_realisations, normalised):
             super().__init__(n_nodes, n_realisations, normalised)
             self._single_target_fdr = DotDict()
     
    @@ -757,7 +757,7 @@ 

    Source code for idtxl.results

             self._print_edge_list(adjacency_matrix, weights=weights)
    -class ResultsPID(ResultsNetworkAnalysis): +
    [docs]class ResultsPID(ResultsNetworkAnalysis): """Store results of Partial Information Decomposition (PID) analysis. Provide a container for results of Partial Information Decomposition (PID) @@ -791,10 +791,10 @@

    Source code for idtxl.results

                 list of analysed targets
         """
     
    -    def __init__(self, n_nodes, n_realisations, normalised):
    +    def __init__(self, n_nodes, n_realisations, normalised):
             super().__init__(n_nodes, n_realisations, normalised)
     
    -    def get_single_target(self, target):
    +
    [docs] def get_single_target(self, target): """Return results for a single target in the network. Results for single targets include for each target @@ -823,10 +823,10 @@

    Source code for idtxl.results

                     (result.selected_vars_sources).
             """
             return super(ResultsPID,
    -                     self).get_single_target(target, fdr=False)
    +                     self).get_single_target(target, fdr=False)
    -class ResultsMultivariatePID(ResultsNetworkAnalysis): +
    [docs]class ResultsMultivariatePID(ResultsNetworkAnalysis): """Store results of Multivariate Partial Information Decomposition (PID) analysis. @@ -861,10 +861,10 @@

    Source code for idtxl.results

                 list of analysed targets
         """
     
    -    def __init__(self, n_nodes, n_realisations, normalised):
    +    def __init__(self, n_nodes, n_realisations, normalised):
             super().__init__(n_nodes, n_realisations, normalised)
     
    -    def get_single_target(self, target):
    +
    [docs] def get_single_target(self, target): """Return results for a single target in the network. Results for single targets include for each target @@ -893,7 +893,7 @@

    Source code for idtxl.results

                     (result.selected_vars_sources).
             """
             return super(ResultsMultivariatePID,
    -                     self).get_single_target(target, fdr=False)
    +                     self).get_single_target(target, fdr=False)
    [docs]class ResultsNetworkComparison(ResultsNetworkAnalysis): @@ -940,7 +940,7 @@

    Source code for idtxl.results

                 settings used for comparison
         """
     
    -    def __init__(self, n_nodes, n_realisations, normalised):
    +    def __init__(self, n_nodes, n_realisations, normalised):
             super().__init__(n_nodes, n_realisations, normalised)
     
         def _add_results(self, union_network, results, settings):
    @@ -1081,6 +1081,122 @@ 

    Source code for idtxl.results

             """
             v = self.get_single_target(target)['selected_vars_sources']
             return np.unique(np.array([s[0] for s in v]))
    + + +
    [docs]class ResultsSingleProcessRudelt(): + """Store results of single process analysis. + + Provides a container for the results Rudelt optimization algorithm. To + obtain results for individual processes, call the .get_single_process() + method (see docstring for details). + + Note that for convenience all dictionaries in this class can additionally + be accessed using dot-notation: + + >>> res_network.settings.estimation_method + + or + + >>> res_network.settings['estimation_method']. + + Attributes: + settings : dict + settings used for estimation of information theoretic measures + data_properties : dict + data properties, contains + - n_processes : int - total number of processes analysed + processes_analysed : list + list of analysed processes + """ + + def __init__(self, processes): + self.settings = DotDict({}) + self.data_properties = DotDict({ + 'n_processes': len(processes) + }) + self.processes_analysed = np.zeros(shape=3, dtype=int) + self._single_process = {} + for ii in processes: + self._single_process[ii] = {} + + @property + def processes_analysed(self): + """Get index of the current_value.""" + return self._processes_analysed + + @processes_analysed.setter + def processes_analysed(self, processes): + self._processes_analysed = processes + + def _add_single_result(self, process_count, process, results, settings): + """Add analysis result for a single process.""" + #self._check_result(process, settings) + self.settings.update(DotDict(settings)) + self._single_process[process] = DotDict(results) + self.processes_analysed[process_count] = process #list(self._single_process.keys()) + +
    [docs] def get_single_process(self, process): + """Return results for a single process. + + Return results for individual processes, contains for each process + + Args: + process : int + process id + + Returns: + dict + results for single process. Note that for convenience + dictionary entries can either be accessed via keywords + (result['selected_vars']) or via dot-notation + (result.selected_vars). Contains keys + + Process : int + Process that was optimized + estimation_method : String + Estimation method that was used for optimization + T_D : float + Estimated optimal value for the temporal depth TD + tau_R : + Information timescale tau_R, a characteristic timescale of history + dependence similar to an autocorrelation time. + R_tot : float + Estimated value for the total history dependence Rtot, + AIS_tot : float + Estimated value for the total active information storage + opt_number_of_bins_d : int + Number of bins d for the embedding that yields (R̂tot ,T̂D) + opt_scaling_k : int + Scaling exponent κ for the embedding that yields (R̂tot , T̂D) + opt_first_bin_size : int + Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ), + history_dependence : array with floating-point values + Estimated history dependence for each embedding + firing_rate : float + Firing rate of the neuron/ spike train + recording_length : float + Length of the recording (in seconds) + H_spiking : float + Entropy of the spike times + + if analyse_auto_MI was set to True additionally: + auto_MI : dict + numpy array of MI values for each delay + auto_MI_delays : list of int + list of delays depending on the given auto_MI_bin_sizes and auto_MI_max_delay + + """ + # Return required key from required _single_process dictionary + if process not in self.processes_analysed: + raise RuntimeError('No results for process {0}.'.format(process)) + + try: + return self._single_process[process] + except AttributeError: + raise RuntimeError('No results have been added.') + except KeyError: + raise RuntimeError( + 'No results for process {0}.'.format(process))
    @@ -1093,7 +1209,7 @@

    Source code for idtxl.results

       

    Quick search

    @@ -1112,14 +1228,14 @@

    Navigation

  • modules |
  • - +
    \ No newline at end of file diff --git a/docs/html/_modules/index.html b/docs/html/_modules/index.html index aea9968b..cae54e16 100644 --- a/docs/html/_modules/index.html +++ b/docs/html/_modules/index.html @@ -5,10 +5,10 @@ - Overview: module code — IDTxl 1.2.1 documentation - - - + Overview: module code — IDTxl 1.3 documentation + + + @@ -31,7 +31,7 @@

    Navigation

  • modules |
  • - +
    @@ -47,12 +47,13 @@

    All modules for which code is available

  • idtxl.bivariate_pid
  • idtxl.bivariate_te
  • idtxl.data
  • +
  • idtxl.embedding_optimization_ais_Rudelt
  • +
  • idtxl.estimators_Rudelt
  • idtxl.estimators_jidt
  • idtxl.estimators_multivariate_pid
  • idtxl.estimators_opencl
  • idtxl.estimators_pid
  • idtxl.idtxl_exceptions
  • -
  • idtxl.idtxl_import
  • idtxl.idtxl_io
  • idtxl.idtxl_utils
  • idtxl.multivariate_mi
  • @@ -77,7 +78,7 @@

    All modules for which code is available

    Quick search

    @@ -96,13 +97,13 @@

    Navigation

  • modules |
  • - +
    \ No newline at end of file diff --git a/docs/html/_sources/idtxl.rst.txt b/docs/html/_sources/idtxl.rst.txt index e9d46f28..6dc6d645 100644 --- a/docs/html/_sources/idtxl.rst.txt +++ b/docs/html/_sources/idtxl.rst.txt @@ -69,6 +69,22 @@ idtxl.active_information_storage module :undoc-members: :show-inheritance: +idtxl.embedding_optimization_ais_Rudelt module +---------------------------------------------- + +.. automodule:: idtxl.embedding_optimization_ais_Rudelt + :members: + :undoc-members: + :show-inheritance: + +idtxl.estimators_Rudelt module +------------------------------ + +.. automodule:: idtxl.estimators_Rudelt + :members: + :undoc-members: + :show-inheritance: + idtxl.estimators_jidt module ---------------------------- @@ -102,14 +118,6 @@ idtxl.estimators_pid module :show-inheritance: -idtxl.idtxl_import module -------------------------- - -.. automodule:: idtxl.idtxl_import - :members: - :undoc-members: - :show-inheritance: - idtxl.idtxl_exceptions module ----------------------------- diff --git a/docs/html/_sources/idtxl_process_analysis.rst.txt b/docs/html/_sources/idtxl_process_analysis.rst.txt index 4d58d0cd..684e1e84 100644 --- a/docs/html/_sources/idtxl_process_analysis.rst.txt +++ b/docs/html/_sources/idtxl_process_analysis.rst.txt @@ -18,3 +18,16 @@ Bivariate Partial Information Decomposition (PID) .. autoclass:: idtxl.bivariate_pid.BivariatePID :members: :noindex: + +History-dependence estimator for neural spiking data +---------------------------------------------------- +Embedding optimization +^^^^^^^^^^^^^^^^^^^^^^ +.. autoclass:: idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt + :members: + :noindex: +Estimators +^^^^^^^^^^ +.. automodule:: idtxl.estimators_Rudelt + :members: + :noindex: diff --git a/docs/html/_sources/idtxl_results_class.rst.txt b/docs/html/_sources/idtxl_results_class.rst.txt index dd16bdd0..31a48a37 100644 --- a/docs/html/_sources/idtxl_results_class.rst.txt +++ b/docs/html/_sources/idtxl_results_class.rst.txt @@ -24,3 +24,6 @@ Results node dynamics .. autoclass:: idtxl.results.ResultsMultivariatePID :members: :noindex: +.. autoclass:: idtxl.results.ResultsSingleProcessRudelt + :members: + :noindex: diff --git a/docs/html/_static/basic.css b/docs/html/_static/basic.css index be19270e..bf18350b 100644 --- a/docs/html/_static/basic.css +++ b/docs/html/_static/basic.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- basic theme. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -130,7 +130,7 @@ ul.search li a { font-weight: bold; } -ul.search li div.context { +ul.search li p.context { color: #888; margin: 2px 0 0 30px; text-align: left; @@ -277,25 +277,25 @@ p.rubric { font-weight: bold; } -img.align-left, .figure.align-left, object.align-left { +img.align-left, figure.align-left, .figure.align-left, object.align-left { clear: left; float: left; margin-right: 1em; } -img.align-right, .figure.align-right, object.align-right { +img.align-right, figure.align-right, .figure.align-right, object.align-right { clear: right; float: right; margin-left: 1em; } -img.align-center, .figure.align-center, object.align-center { +img.align-center, figure.align-center, .figure.align-center, object.align-center { display: block; margin-left: auto; margin-right: auto; } -img.align-default, .figure.align-default { +img.align-default, figure.align-default, .figure.align-default { display: block; margin-left: auto; margin-right: auto; @@ -319,7 +319,8 @@ img.align-default, .figure.align-default { /* -- sidebars -------------------------------------------------------------- */ -div.sidebar { +div.sidebar, +aside.sidebar { margin: 0 0 0.5em 1em; border: 1px solid #ddb; padding: 7px; @@ -377,12 +378,14 @@ div.body p.centered { /* -- content of sidebars/topics/admonitions -------------------------------- */ div.sidebar > :last-child, +aside.sidebar > :last-child, div.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; } div.sidebar::after, +aside.sidebar::after, div.topic::after, div.admonition::after, blockquote::after { @@ -455,20 +458,22 @@ td > :last-child { /* -- figures --------------------------------------------------------------- */ -div.figure { +div.figure, figure { margin: 0.5em; padding: 0.5em; } -div.figure p.caption { +div.figure p.caption, figcaption { padding: 0.3em; } -div.figure p.caption span.caption-number { +div.figure p.caption span.caption-number, +figcaption span.caption-number { font-style: italic; } -div.figure p.caption span.caption-text { +div.figure p.caption span.caption-text, +figcaption span.caption-text { } /* -- field list styles ----------------------------------------------------- */ @@ -503,6 +508,63 @@ table.hlist td { vertical-align: top; } +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + /* -- other body styles ----------------------------------------------------- */ @@ -629,14 +691,6 @@ dl.glossary dt { font-size: 1.1em; } -.optional { - font-size: 1.3em; -} - -.sig-paren { - font-size: larger; -} - .versionmodified { font-style: italic; } @@ -677,8 +731,9 @@ dl.glossary dt { .classifier:before { font-style: normal; - margin: 0.5em; + margin: 0 0.5em; content: ":"; + display: inline-block; } abbr, acronym { @@ -702,6 +757,7 @@ span.pre { -ms-hyphens: none; -webkit-hyphens: none; hyphens: none; + white-space: nowrap; } div[class*="highlight-"] { @@ -765,8 +821,12 @@ div.code-block-caption code { table.highlighttable td.linenos, span.linenos, -div.doctest > div.highlight span.gp { /* gp: Generic.Prompt */ - user-select: none; +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ } div.code-block-caption span.caption-number { @@ -781,16 +841,6 @@ div.literal-block-wrapper { margin: 1em 0; } -code.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -code.descclassname { - background-color: transparent; -} - code.xref, a code { background-color: transparent; font-weight: bold; diff --git a/docs/html/_static/doctools.js b/docs/html/_static/doctools.js index 61ac9d26..e509e483 100644 --- a/docs/html/_static/doctools.js +++ b/docs/html/_static/doctools.js @@ -4,7 +4,7 @@ * * Sphinx JavaScript utilities for all documentation. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -264,6 +264,9 @@ var Documentation = { hideSearchWords : function() { $('#searchbox .highlight-link').fadeOut(300); $('span.highlighted').removeClass('highlighted'); + var url = new URL(window.location); + url.searchParams.delete('highlight'); + window.history.replaceState({}, '', url); }, /** @@ -301,12 +304,14 @@ var Documentation = { window.location.href = prevHref; return false; } + break; case 39: // right var nextHref = $('link[rel="next"]').prop('href'); if (nextHref) { window.location.href = nextHref; return false; } + break; } } }); diff --git a/docs/html/_static/documentation_options.js b/docs/html/_static/documentation_options.js index 120e3eec..8b0a86c6 100644 --- a/docs/html/_static/documentation_options.js +++ b/docs/html/_static/documentation_options.js @@ -1,6 +1,6 @@ var DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), - VERSION: '1.2.1', + VERSION: '1.3', LANGUAGE: 'None', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/docs/html/_static/epub.css b/docs/html/_static/epub.css index 6e5722fd..165f41d5 100644 --- a/docs/html/_static/epub.css +++ b/docs/html/_static/epub.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- default theme. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/docs/html/_static/language_data.js b/docs/html/_static/language_data.js index 863704b3..ebe2f03b 100644 --- a/docs/html/_static/language_data.js +++ b/docs/html/_static/language_data.js @@ -5,7 +5,7 @@ * This script contains the language-specific data used by searchtools.js, * namely the list of stopwords, stemmer, scorer and splitter. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/docs/html/_static/pygments.css b/docs/html/_static/pygments.css index 20c4814d..691aeb82 100644 --- a/docs/html/_static/pygments.css +++ b/docs/html/_static/pygments.css @@ -1,5 +1,10 @@ +pre { line-height: 125%; } +td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } .highlight .hll { background-color: #ffffcc } -.highlight { background: #eeffcc; } +.highlight { background: #eeffcc; } .highlight .c { color: #408090; font-style: italic } /* Comment */ .highlight .err { border: 1px solid #FF0000 } /* Error */ .highlight .k { color: #007020; font-weight: bold } /* Keyword */ diff --git a/docs/html/_static/pyramid.css b/docs/html/_static/pyramid.css index 1329388f..e0b1cfac 100644 --- a/docs/html/_static/pyramid.css +++ b/docs/html/_static/pyramid.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- pylons theme. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/docs/html/_static/searchtools.js b/docs/html/_static/searchtools.js index 1a90152e..2d778593 100644 --- a/docs/html/_static/searchtools.js +++ b/docs/html/_static/searchtools.js @@ -4,7 +4,7 @@ * * Sphinx JavaScript utilities for the full-text search. * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -282,7 +282,10 @@ var Search = { complete: function(jqxhr, textstatus) { var data = jqxhr.responseText; if (data !== '' && data !== undefined) { - listItem.append(Search.makeSearchSummary(data, searchterms, hlterms)); + var summary = Search.makeSearchSummary(data, searchterms, hlterms); + if (summary) { + listItem.append(summary); + } } Search.output.append(listItem); setTimeout(function() { @@ -325,7 +328,9 @@ var Search = { var results = []; for (var prefix in objects) { - for (var name in objects[prefix]) { + for (var iMatch = 0; iMatch != objects[prefix].length; ++iMatch) { + var match = objects[prefix][iMatch]; + var name = match[4]; var fullname = (prefix ? prefix + '.' : '') + name; var fullnameLower = fullname.toLowerCase() if (fullnameLower.indexOf(object) > -1) { @@ -339,7 +344,6 @@ var Search = { } else if (parts[parts.length - 1].indexOf(object) > -1) { score += Scorer.objPartialMatch; } - var match = objects[prefix][name]; var objname = objnames[match[1]][2]; var title = titles[match[0]]; // If more than one term searched for, we require other words to be @@ -498,6 +502,9 @@ var Search = { */ makeSearchSummary : function(htmlText, keywords, hlwords) { var text = Search.htmlToText(htmlText); + if (text == "") { + return null; + } var textLower = text.toLowerCase(); var start = 0; $.each(keywords, function() { @@ -509,7 +516,7 @@ var Search = { var excerpt = ((start > 0) ? '...' : '') + $.trim(text.substr(start, 240)) + ((start + 240 - text.length) ? '...' : ''); - var rv = $('
    ').text(excerpt); + var rv = $('

    ').text(excerpt); $.each(hlwords, function() { rv = rv.highlightText(this, 'highlighted'); }); diff --git a/docs/html/_static/underscore-1.13.1.js b/docs/html/_static/underscore-1.13.1.js new file mode 100644 index 00000000..ffd77af9 --- /dev/null +++ b/docs/html/_static/underscore-1.13.1.js @@ -0,0 +1,2042 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define('underscore', factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (function () { + var current = global._; + var exports = global._ = factory(); + exports.noConflict = function () { global._ = current; return exports; }; + }())); +}(this, (function () { + // Underscore.js 1.13.1 + // https://underscorejs.org + // (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors + // Underscore may be freely distributed under the MIT license. + + // Current version. + var VERSION = '1.13.1'; + + // Establish the root object, `window` (`self`) in the browser, `global` + // on the server, or `this` in some virtual machines. We use `self` + // instead of `window` for `WebWorker` support. + var root = typeof self == 'object' && self.self === self && self || + typeof global == 'object' && global.global === global && global || + Function('return this')() || + {}; + + // Save bytes in the minified (but not gzipped) version: + var ArrayProto = Array.prototype, ObjProto = Object.prototype; + var SymbolProto = typeof Symbol !== 'undefined' ? Symbol.prototype : null; + + // Create quick reference variables for speed access to core prototypes. + var push = ArrayProto.push, + slice = ArrayProto.slice, + toString = ObjProto.toString, + hasOwnProperty = ObjProto.hasOwnProperty; + + // Modern feature detection. + var supportsArrayBuffer = typeof ArrayBuffer !== 'undefined', + supportsDataView = typeof DataView !== 'undefined'; + + // All **ECMAScript 5+** native function implementations that we hope to use + // are declared here. + var nativeIsArray = Array.isArray, + nativeKeys = Object.keys, + nativeCreate = Object.create, + nativeIsView = supportsArrayBuffer && ArrayBuffer.isView; + + // Create references to these builtin functions because we override them. + var _isNaN = isNaN, + _isFinite = isFinite; + + // Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed. + var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString'); + var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString', + 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString']; + + // The largest integer that can be represented exactly. + var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1; + + // Some functions take a variable number of arguments, or a few expected + // arguments at the beginning and then a variable number of values to operate + // on. This helper accumulates all remaining arguments past the function’s + // argument length (or an explicit `startIndex`), into an array that becomes + // the last argument. Similar to ES6’s "rest parameter". + function restArguments(func, startIndex) { + startIndex = startIndex == null ? func.length - 1 : +startIndex; + return function() { + var length = Math.max(arguments.length - startIndex, 0), + rest = Array(length), + index = 0; + for (; index < length; index++) { + rest[index] = arguments[index + startIndex]; + } + switch (startIndex) { + case 0: return func.call(this, rest); + case 1: return func.call(this, arguments[0], rest); + case 2: return func.call(this, arguments[0], arguments[1], rest); + } + var args = Array(startIndex + 1); + for (index = 0; index < startIndex; index++) { + args[index] = arguments[index]; + } + args[startIndex] = rest; + return func.apply(this, args); + }; + } + + // Is a given variable an object? + function isObject(obj) { + var type = typeof obj; + return type === 'function' || type === 'object' && !!obj; + } + + // Is a given value equal to null? + function isNull(obj) { + return obj === null; + } + + // Is a given variable undefined? + function isUndefined(obj) { + return obj === void 0; + } + + // Is a given value a boolean? + function isBoolean(obj) { + return obj === true || obj === false || toString.call(obj) === '[object Boolean]'; + } + + // Is a given value a DOM element? + function isElement(obj) { + return !!(obj && obj.nodeType === 1); + } + + // Internal function for creating a `toString`-based type tester. + function tagTester(name) { + var tag = '[object ' + name + ']'; + return function(obj) { + return toString.call(obj) === tag; + }; + } + + var isString = tagTester('String'); + + var isNumber = tagTester('Number'); + + var isDate = tagTester('Date'); + + var isRegExp = tagTester('RegExp'); + + var isError = tagTester('Error'); + + var isSymbol = tagTester('Symbol'); + + var isArrayBuffer = tagTester('ArrayBuffer'); + + var isFunction = tagTester('Function'); + + // Optimize `isFunction` if appropriate. Work around some `typeof` bugs in old + // v8, IE 11 (#1621), Safari 8 (#1929), and PhantomJS (#2236). + var nodelist = root.document && root.document.childNodes; + if (typeof /./ != 'function' && typeof Int8Array != 'object' && typeof nodelist != 'function') { + isFunction = function(obj) { + return typeof obj == 'function' || false; + }; + } + + var isFunction$1 = isFunction; + + var hasObjectTag = tagTester('Object'); + + // In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`. + // In IE 11, the most common among them, this problem also applies to + // `Map`, `WeakMap` and `Set`. + var hasStringTagBug = ( + supportsDataView && hasObjectTag(new DataView(new ArrayBuffer(8))) + ), + isIE11 = (typeof Map !== 'undefined' && hasObjectTag(new Map)); + + var isDataView = tagTester('DataView'); + + // In IE 10 - Edge 13, we need a different heuristic + // to determine whether an object is a `DataView`. + function ie10IsDataView(obj) { + return obj != null && isFunction$1(obj.getInt8) && isArrayBuffer(obj.buffer); + } + + var isDataView$1 = (hasStringTagBug ? ie10IsDataView : isDataView); + + // Is a given value an array? + // Delegates to ECMA5's native `Array.isArray`. + var isArray = nativeIsArray || tagTester('Array'); + + // Internal function to check whether `key` is an own property name of `obj`. + function has$1(obj, key) { + return obj != null && hasOwnProperty.call(obj, key); + } + + var isArguments = tagTester('Arguments'); + + // Define a fallback version of the method in browsers (ahem, IE < 9), where + // there isn't any inspectable "Arguments" type. + (function() { + if (!isArguments(arguments)) { + isArguments = function(obj) { + return has$1(obj, 'callee'); + }; + } + }()); + + var isArguments$1 = isArguments; + + // Is a given object a finite number? + function isFinite$1(obj) { + return !isSymbol(obj) && _isFinite(obj) && !isNaN(parseFloat(obj)); + } + + // Is the given value `NaN`? + function isNaN$1(obj) { + return isNumber(obj) && _isNaN(obj); + } + + // Predicate-generating function. Often useful outside of Underscore. + function constant(value) { + return function() { + return value; + }; + } + + // Common internal logic for `isArrayLike` and `isBufferLike`. + function createSizePropertyCheck(getSizeProperty) { + return function(collection) { + var sizeProperty = getSizeProperty(collection); + return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX; + } + } + + // Internal helper to generate a function to obtain property `key` from `obj`. + function shallowProperty(key) { + return function(obj) { + return obj == null ? void 0 : obj[key]; + }; + } + + // Internal helper to obtain the `byteLength` property of an object. + var getByteLength = shallowProperty('byteLength'); + + // Internal helper to determine whether we should spend extensive checks against + // `ArrayBuffer` et al. + var isBufferLike = createSizePropertyCheck(getByteLength); + + // Is a given value a typed array? + var typedArrayPattern = /\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/; + function isTypedArray(obj) { + // `ArrayBuffer.isView` is the most future-proof, so use it when available. + // Otherwise, fall back on the above regular expression. + return nativeIsView ? (nativeIsView(obj) && !isDataView$1(obj)) : + isBufferLike(obj) && typedArrayPattern.test(toString.call(obj)); + } + + var isTypedArray$1 = supportsArrayBuffer ? isTypedArray : constant(false); + + // Internal helper to obtain the `length` property of an object. + var getLength = shallowProperty('length'); + + // Internal helper to create a simple lookup structure. + // `collectNonEnumProps` used to depend on `_.contains`, but this led to + // circular imports. `emulatedSet` is a one-off solution that only works for + // arrays of strings. + function emulatedSet(keys) { + var hash = {}; + for (var l = keys.length, i = 0; i < l; ++i) hash[keys[i]] = true; + return { + contains: function(key) { return hash[key]; }, + push: function(key) { + hash[key] = true; + return keys.push(key); + } + }; + } + + // Internal helper. Checks `keys` for the presence of keys in IE < 9 that won't + // be iterated by `for key in ...` and thus missed. Extends `keys` in place if + // needed. + function collectNonEnumProps(obj, keys) { + keys = emulatedSet(keys); + var nonEnumIdx = nonEnumerableProps.length; + var constructor = obj.constructor; + var proto = isFunction$1(constructor) && constructor.prototype || ObjProto; + + // Constructor is a special case. + var prop = 'constructor'; + if (has$1(obj, prop) && !keys.contains(prop)) keys.push(prop); + + while (nonEnumIdx--) { + prop = nonEnumerableProps[nonEnumIdx]; + if (prop in obj && obj[prop] !== proto[prop] && !keys.contains(prop)) { + keys.push(prop); + } + } + } + + // Retrieve the names of an object's own properties. + // Delegates to **ECMAScript 5**'s native `Object.keys`. + function keys(obj) { + if (!isObject(obj)) return []; + if (nativeKeys) return nativeKeys(obj); + var keys = []; + for (var key in obj) if (has$1(obj, key)) keys.push(key); + // Ahem, IE < 9. + if (hasEnumBug) collectNonEnumProps(obj, keys); + return keys; + } + + // Is a given array, string, or object empty? + // An "empty" object has no enumerable own-properties. + function isEmpty(obj) { + if (obj == null) return true; + // Skip the more expensive `toString`-based type checks if `obj` has no + // `.length`. + var length = getLength(obj); + if (typeof length == 'number' && ( + isArray(obj) || isString(obj) || isArguments$1(obj) + )) return length === 0; + return getLength(keys(obj)) === 0; + } + + // Returns whether an object has a given set of `key:value` pairs. + function isMatch(object, attrs) { + var _keys = keys(attrs), length = _keys.length; + if (object == null) return !length; + var obj = Object(object); + for (var i = 0; i < length; i++) { + var key = _keys[i]; + if (attrs[key] !== obj[key] || !(key in obj)) return false; + } + return true; + } + + // If Underscore is called as a function, it returns a wrapped object that can + // be used OO-style. This wrapper holds altered versions of all functions added + // through `_.mixin`. Wrapped objects may be chained. + function _$1(obj) { + if (obj instanceof _$1) return obj; + if (!(this instanceof _$1)) return new _$1(obj); + this._wrapped = obj; + } + + _$1.VERSION = VERSION; + + // Extracts the result from a wrapped and chained object. + _$1.prototype.value = function() { + return this._wrapped; + }; + + // Provide unwrapping proxies for some methods used in engine operations + // such as arithmetic and JSON stringification. + _$1.prototype.valueOf = _$1.prototype.toJSON = _$1.prototype.value; + + _$1.prototype.toString = function() { + return String(this._wrapped); + }; + + // Internal function to wrap or shallow-copy an ArrayBuffer, + // typed array or DataView to a new view, reusing the buffer. + function toBufferView(bufferSource) { + return new Uint8Array( + bufferSource.buffer || bufferSource, + bufferSource.byteOffset || 0, + getByteLength(bufferSource) + ); + } + + // We use this string twice, so give it a name for minification. + var tagDataView = '[object DataView]'; + + // Internal recursive comparison function for `_.isEqual`. + function eq(a, b, aStack, bStack) { + // Identical objects are equal. `0 === -0`, but they aren't identical. + // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal). + if (a === b) return a !== 0 || 1 / a === 1 / b; + // `null` or `undefined` only equal to itself (strict comparison). + if (a == null || b == null) return false; + // `NaN`s are equivalent, but non-reflexive. + if (a !== a) return b !== b; + // Exhaust primitive checks + var type = typeof a; + if (type !== 'function' && type !== 'object' && typeof b != 'object') return false; + return deepEq(a, b, aStack, bStack); + } + + // Internal recursive comparison function for `_.isEqual`. + function deepEq(a, b, aStack, bStack) { + // Unwrap any wrapped objects. + if (a instanceof _$1) a = a._wrapped; + if (b instanceof _$1) b = b._wrapped; + // Compare `[[Class]]` names. + var className = toString.call(a); + if (className !== toString.call(b)) return false; + // Work around a bug in IE 10 - Edge 13. + if (hasStringTagBug && className == '[object Object]' && isDataView$1(a)) { + if (!isDataView$1(b)) return false; + className = tagDataView; + } + switch (className) { + // These types are compared by value. + case '[object RegExp]': + // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i') + case '[object String]': + // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is + // equivalent to `new String("5")`. + return '' + a === '' + b; + case '[object Number]': + // `NaN`s are equivalent, but non-reflexive. + // Object(NaN) is equivalent to NaN. + if (+a !== +a) return +b !== +b; + // An `egal` comparison is performed for other numeric values. + return +a === 0 ? 1 / +a === 1 / b : +a === +b; + case '[object Date]': + case '[object Boolean]': + // Coerce dates and booleans to numeric primitive values. Dates are compared by their + // millisecond representations. Note that invalid dates with millisecond representations + // of `NaN` are not equivalent. + return +a === +b; + case '[object Symbol]': + return SymbolProto.valueOf.call(a) === SymbolProto.valueOf.call(b); + case '[object ArrayBuffer]': + case tagDataView: + // Coerce to typed array so we can fall through. + return deepEq(toBufferView(a), toBufferView(b), aStack, bStack); + } + + var areArrays = className === '[object Array]'; + if (!areArrays && isTypedArray$1(a)) { + var byteLength = getByteLength(a); + if (byteLength !== getByteLength(b)) return false; + if (a.buffer === b.buffer && a.byteOffset === b.byteOffset) return true; + areArrays = true; + } + if (!areArrays) { + if (typeof a != 'object' || typeof b != 'object') return false; + + // Objects with different constructors are not equivalent, but `Object`s or `Array`s + // from different frames are. + var aCtor = a.constructor, bCtor = b.constructor; + if (aCtor !== bCtor && !(isFunction$1(aCtor) && aCtor instanceof aCtor && + isFunction$1(bCtor) && bCtor instanceof bCtor) + && ('constructor' in a && 'constructor' in b)) { + return false; + } + } + // Assume equality for cyclic structures. The algorithm for detecting cyclic + // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`. + + // Initializing stack of traversed objects. + // It's done here since we only need them for objects and arrays comparison. + aStack = aStack || []; + bStack = bStack || []; + var length = aStack.length; + while (length--) { + // Linear search. Performance is inversely proportional to the number of + // unique nested structures. + if (aStack[length] === a) return bStack[length] === b; + } + + // Add the first object to the stack of traversed objects. + aStack.push(a); + bStack.push(b); + + // Recursively compare objects and arrays. + if (areArrays) { + // Compare array lengths to determine if a deep comparison is necessary. + length = a.length; + if (length !== b.length) return false; + // Deep compare the contents, ignoring non-numeric properties. + while (length--) { + if (!eq(a[length], b[length], aStack, bStack)) return false; + } + } else { + // Deep compare objects. + var _keys = keys(a), key; + length = _keys.length; + // Ensure that both objects contain the same number of properties before comparing deep equality. + if (keys(b).length !== length) return false; + while (length--) { + // Deep compare each member + key = _keys[length]; + if (!(has$1(b, key) && eq(a[key], b[key], aStack, bStack))) return false; + } + } + // Remove the first object from the stack of traversed objects. + aStack.pop(); + bStack.pop(); + return true; + } + + // Perform a deep comparison to check if two objects are equal. + function isEqual(a, b) { + return eq(a, b); + } + + // Retrieve all the enumerable property names of an object. + function allKeys(obj) { + if (!isObject(obj)) return []; + var keys = []; + for (var key in obj) keys.push(key); + // Ahem, IE < 9. + if (hasEnumBug) collectNonEnumProps(obj, keys); + return keys; + } + + // Since the regular `Object.prototype.toString` type tests don't work for + // some types in IE 11, we use a fingerprinting heuristic instead, based + // on the methods. It's not great, but it's the best we got. + // The fingerprint method lists are defined below. + function ie11fingerprint(methods) { + var length = getLength(methods); + return function(obj) { + if (obj == null) return false; + // `Map`, `WeakMap` and `Set` have no enumerable keys. + var keys = allKeys(obj); + if (getLength(keys)) return false; + for (var i = 0; i < length; i++) { + if (!isFunction$1(obj[methods[i]])) return false; + } + // If we are testing against `WeakMap`, we need to ensure that + // `obj` doesn't have a `forEach` method in order to distinguish + // it from a regular `Map`. + return methods !== weakMapMethods || !isFunction$1(obj[forEachName]); + }; + } + + // In the interest of compact minification, we write + // each string in the fingerprints only once. + var forEachName = 'forEach', + hasName = 'has', + commonInit = ['clear', 'delete'], + mapTail = ['get', hasName, 'set']; + + // `Map`, `WeakMap` and `Set` each have slightly different + // combinations of the above sublists. + var mapMethods = commonInit.concat(forEachName, mapTail), + weakMapMethods = commonInit.concat(mapTail), + setMethods = ['add'].concat(commonInit, forEachName, hasName); + + var isMap = isIE11 ? ie11fingerprint(mapMethods) : tagTester('Map'); + + var isWeakMap = isIE11 ? ie11fingerprint(weakMapMethods) : tagTester('WeakMap'); + + var isSet = isIE11 ? ie11fingerprint(setMethods) : tagTester('Set'); + + var isWeakSet = tagTester('WeakSet'); + + // Retrieve the values of an object's properties. + function values(obj) { + var _keys = keys(obj); + var length = _keys.length; + var values = Array(length); + for (var i = 0; i < length; i++) { + values[i] = obj[_keys[i]]; + } + return values; + } + + // Convert an object into a list of `[key, value]` pairs. + // The opposite of `_.object` with one argument. + function pairs(obj) { + var _keys = keys(obj); + var length = _keys.length; + var pairs = Array(length); + for (var i = 0; i < length; i++) { + pairs[i] = [_keys[i], obj[_keys[i]]]; + } + return pairs; + } + + // Invert the keys and values of an object. The values must be serializable. + function invert(obj) { + var result = {}; + var _keys = keys(obj); + for (var i = 0, length = _keys.length; i < length; i++) { + result[obj[_keys[i]]] = _keys[i]; + } + return result; + } + + // Return a sorted list of the function names available on the object. + function functions(obj) { + var names = []; + for (var key in obj) { + if (isFunction$1(obj[key])) names.push(key); + } + return names.sort(); + } + + // An internal function for creating assigner functions. + function createAssigner(keysFunc, defaults) { + return function(obj) { + var length = arguments.length; + if (defaults) obj = Object(obj); + if (length < 2 || obj == null) return obj; + for (var index = 1; index < length; index++) { + var source = arguments[index], + keys = keysFunc(source), + l = keys.length; + for (var i = 0; i < l; i++) { + var key = keys[i]; + if (!defaults || obj[key] === void 0) obj[key] = source[key]; + } + } + return obj; + }; + } + + // Extend a given object with all the properties in passed-in object(s). + var extend = createAssigner(allKeys); + + // Assigns a given object with all the own properties in the passed-in + // object(s). + // (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign) + var extendOwn = createAssigner(keys); + + // Fill in a given object with default properties. + var defaults = createAssigner(allKeys, true); + + // Create a naked function reference for surrogate-prototype-swapping. + function ctor() { + return function(){}; + } + + // An internal function for creating a new object that inherits from another. + function baseCreate(prototype) { + if (!isObject(prototype)) return {}; + if (nativeCreate) return nativeCreate(prototype); + var Ctor = ctor(); + Ctor.prototype = prototype; + var result = new Ctor; + Ctor.prototype = null; + return result; + } + + // Creates an object that inherits from the given prototype object. + // If additional properties are provided then they will be added to the + // created object. + function create(prototype, props) { + var result = baseCreate(prototype); + if (props) extendOwn(result, props); + return result; + } + + // Create a (shallow-cloned) duplicate of an object. + function clone(obj) { + if (!isObject(obj)) return obj; + return isArray(obj) ? obj.slice() : extend({}, obj); + } + + // Invokes `interceptor` with the `obj` and then returns `obj`. + // The primary purpose of this method is to "tap into" a method chain, in + // order to perform operations on intermediate results within the chain. + function tap(obj, interceptor) { + interceptor(obj); + return obj; + } + + // Normalize a (deep) property `path` to array. + // Like `_.iteratee`, this function can be customized. + function toPath$1(path) { + return isArray(path) ? path : [path]; + } + _$1.toPath = toPath$1; + + // Internal wrapper for `_.toPath` to enable minification. + // Similar to `cb` for `_.iteratee`. + function toPath(path) { + return _$1.toPath(path); + } + + // Internal function to obtain a nested property in `obj` along `path`. + function deepGet(obj, path) { + var length = path.length; + for (var i = 0; i < length; i++) { + if (obj == null) return void 0; + obj = obj[path[i]]; + } + return length ? obj : void 0; + } + + // Get the value of the (deep) property on `path` from `object`. + // If any property in `path` does not exist or if the value is + // `undefined`, return `defaultValue` instead. + // The `path` is normalized through `_.toPath`. + function get(object, path, defaultValue) { + var value = deepGet(object, toPath(path)); + return isUndefined(value) ? defaultValue : value; + } + + // Shortcut function for checking if an object has a given property directly on + // itself (in other words, not on a prototype). Unlike the internal `has` + // function, this public version can also traverse nested properties. + function has(obj, path) { + path = toPath(path); + var length = path.length; + for (var i = 0; i < length; i++) { + var key = path[i]; + if (!has$1(obj, key)) return false; + obj = obj[key]; + } + return !!length; + } + + // Keep the identity function around for default iteratees. + function identity(value) { + return value; + } + + // Returns a predicate for checking whether an object has a given set of + // `key:value` pairs. + function matcher(attrs) { + attrs = extendOwn({}, attrs); + return function(obj) { + return isMatch(obj, attrs); + }; + } + + // Creates a function that, when passed an object, will traverse that object’s + // properties down the given `path`, specified as an array of keys or indices. + function property(path) { + path = toPath(path); + return function(obj) { + return deepGet(obj, path); + }; + } + + // Internal function that returns an efficient (for current engines) version + // of the passed-in callback, to be repeatedly applied in other Underscore + // functions. + function optimizeCb(func, context, argCount) { + if (context === void 0) return func; + switch (argCount == null ? 3 : argCount) { + case 1: return function(value) { + return func.call(context, value); + }; + // The 2-argument case is omitted because we’re not using it. + case 3: return function(value, index, collection) { + return func.call(context, value, index, collection); + }; + case 4: return function(accumulator, value, index, collection) { + return func.call(context, accumulator, value, index, collection); + }; + } + return function() { + return func.apply(context, arguments); + }; + } + + // An internal function to generate callbacks that can be applied to each + // element in a collection, returning the desired result — either `_.identity`, + // an arbitrary callback, a property matcher, or a property accessor. + function baseIteratee(value, context, argCount) { + if (value == null) return identity; + if (isFunction$1(value)) return optimizeCb(value, context, argCount); + if (isObject(value) && !isArray(value)) return matcher(value); + return property(value); + } + + // External wrapper for our callback generator. Users may customize + // `_.iteratee` if they want additional predicate/iteratee shorthand styles. + // This abstraction hides the internal-only `argCount` argument. + function iteratee(value, context) { + return baseIteratee(value, context, Infinity); + } + _$1.iteratee = iteratee; + + // The function we call internally to generate a callback. It invokes + // `_.iteratee` if overridden, otherwise `baseIteratee`. + function cb(value, context, argCount) { + if (_$1.iteratee !== iteratee) return _$1.iteratee(value, context); + return baseIteratee(value, context, argCount); + } + + // Returns the results of applying the `iteratee` to each element of `obj`. + // In contrast to `_.map` it returns an object. + function mapObject(obj, iteratee, context) { + iteratee = cb(iteratee, context); + var _keys = keys(obj), + length = _keys.length, + results = {}; + for (var index = 0; index < length; index++) { + var currentKey = _keys[index]; + results[currentKey] = iteratee(obj[currentKey], currentKey, obj); + } + return results; + } + + // Predicate-generating function. Often useful outside of Underscore. + function noop(){} + + // Generates a function for a given object that returns a given property. + function propertyOf(obj) { + if (obj == null) return noop; + return function(path) { + return get(obj, path); + }; + } + + // Run a function **n** times. + function times(n, iteratee, context) { + var accum = Array(Math.max(0, n)); + iteratee = optimizeCb(iteratee, context, 1); + for (var i = 0; i < n; i++) accum[i] = iteratee(i); + return accum; + } + + // Return a random integer between `min` and `max` (inclusive). + function random(min, max) { + if (max == null) { + max = min; + min = 0; + } + return min + Math.floor(Math.random() * (max - min + 1)); + } + + // A (possibly faster) way to get the current timestamp as an integer. + var now = Date.now || function() { + return new Date().getTime(); + }; + + // Internal helper to generate functions for escaping and unescaping strings + // to/from HTML interpolation. + function createEscaper(map) { + var escaper = function(match) { + return map[match]; + }; + // Regexes for identifying a key that needs to be escaped. + var source = '(?:' + keys(map).join('|') + ')'; + var testRegexp = RegExp(source); + var replaceRegexp = RegExp(source, 'g'); + return function(string) { + string = string == null ? '' : '' + string; + return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string; + }; + } + + // Internal list of HTML entities for escaping. + var escapeMap = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + '`': '`' + }; + + // Function for escaping strings to HTML interpolation. + var _escape = createEscaper(escapeMap); + + // Internal list of HTML entities for unescaping. + var unescapeMap = invert(escapeMap); + + // Function for unescaping strings from HTML interpolation. + var _unescape = createEscaper(unescapeMap); + + // By default, Underscore uses ERB-style template delimiters. Change the + // following template settings to use alternative delimiters. + var templateSettings = _$1.templateSettings = { + evaluate: /<%([\s\S]+?)%>/g, + interpolate: /<%=([\s\S]+?)%>/g, + escape: /<%-([\s\S]+?)%>/g + }; + + // When customizing `_.templateSettings`, if you don't want to define an + // interpolation, evaluation or escaping regex, we need one that is + // guaranteed not to match. + var noMatch = /(.)^/; + + // Certain characters need to be escaped so that they can be put into a + // string literal. + var escapes = { + "'": "'", + '\\': '\\', + '\r': 'r', + '\n': 'n', + '\u2028': 'u2028', + '\u2029': 'u2029' + }; + + var escapeRegExp = /\\|'|\r|\n|\u2028|\u2029/g; + + function escapeChar(match) { + return '\\' + escapes[match]; + } + + // In order to prevent third-party code injection through + // `_.templateSettings.variable`, we test it against the following regular + // expression. It is intentionally a bit more liberal than just matching valid + // identifiers, but still prevents possible loopholes through defaults or + // destructuring assignment. + var bareIdentifier = /^\s*(\w|\$)+\s*$/; + + // JavaScript micro-templating, similar to John Resig's implementation. + // Underscore templating handles arbitrary delimiters, preserves whitespace, + // and correctly escapes quotes within interpolated code. + // NB: `oldSettings` only exists for backwards compatibility. + function template(text, settings, oldSettings) { + if (!settings && oldSettings) settings = oldSettings; + settings = defaults({}, settings, _$1.templateSettings); + + // Combine delimiters into one regular expression via alternation. + var matcher = RegExp([ + (settings.escape || noMatch).source, + (settings.interpolate || noMatch).source, + (settings.evaluate || noMatch).source + ].join('|') + '|$', 'g'); + + // Compile the template source, escaping string literals appropriately. + var index = 0; + var source = "__p+='"; + text.replace(matcher, function(match, escape, interpolate, evaluate, offset) { + source += text.slice(index, offset).replace(escapeRegExp, escapeChar); + index = offset + match.length; + + if (escape) { + source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'"; + } else if (interpolate) { + source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'"; + } else if (evaluate) { + source += "';\n" + evaluate + "\n__p+='"; + } + + // Adobe VMs need the match returned to produce the correct offset. + return match; + }); + source += "';\n"; + + var argument = settings.variable; + if (argument) { + // Insure against third-party code injection. (CVE-2021-23358) + if (!bareIdentifier.test(argument)) throw new Error( + 'variable is not a bare identifier: ' + argument + ); + } else { + // If a variable is not specified, place data values in local scope. + source = 'with(obj||{}){\n' + source + '}\n'; + argument = 'obj'; + } + + source = "var __t,__p='',__j=Array.prototype.join," + + "print=function(){__p+=__j.call(arguments,'');};\n" + + source + 'return __p;\n'; + + var render; + try { + render = new Function(argument, '_', source); + } catch (e) { + e.source = source; + throw e; + } + + var template = function(data) { + return render.call(this, data, _$1); + }; + + // Provide the compiled source as a convenience for precompilation. + template.source = 'function(' + argument + '){\n' + source + '}'; + + return template; + } + + // Traverses the children of `obj` along `path`. If a child is a function, it + // is invoked with its parent as context. Returns the value of the final + // child, or `fallback` if any child is undefined. + function result(obj, path, fallback) { + path = toPath(path); + var length = path.length; + if (!length) { + return isFunction$1(fallback) ? fallback.call(obj) : fallback; + } + for (var i = 0; i < length; i++) { + var prop = obj == null ? void 0 : obj[path[i]]; + if (prop === void 0) { + prop = fallback; + i = length; // Ensure we don't continue iterating. + } + obj = isFunction$1(prop) ? prop.call(obj) : prop; + } + return obj; + } + + // Generate a unique integer id (unique within the entire client session). + // Useful for temporary DOM ids. + var idCounter = 0; + function uniqueId(prefix) { + var id = ++idCounter + ''; + return prefix ? prefix + id : id; + } + + // Start chaining a wrapped Underscore object. + function chain(obj) { + var instance = _$1(obj); + instance._chain = true; + return instance; + } + + // Internal function to execute `sourceFunc` bound to `context` with optional + // `args`. Determines whether to execute a function as a constructor or as a + // normal function. + function executeBound(sourceFunc, boundFunc, context, callingContext, args) { + if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args); + var self = baseCreate(sourceFunc.prototype); + var result = sourceFunc.apply(self, args); + if (isObject(result)) return result; + return self; + } + + // Partially apply a function by creating a version that has had some of its + // arguments pre-filled, without changing its dynamic `this` context. `_` acts + // as a placeholder by default, allowing any combination of arguments to be + // pre-filled. Set `_.partial.placeholder` for a custom placeholder argument. + var partial = restArguments(function(func, boundArgs) { + var placeholder = partial.placeholder; + var bound = function() { + var position = 0, length = boundArgs.length; + var args = Array(length); + for (var i = 0; i < length; i++) { + args[i] = boundArgs[i] === placeholder ? arguments[position++] : boundArgs[i]; + } + while (position < arguments.length) args.push(arguments[position++]); + return executeBound(func, bound, this, this, args); + }; + return bound; + }); + + partial.placeholder = _$1; + + // Create a function bound to a given object (assigning `this`, and arguments, + // optionally). + var bind = restArguments(function(func, context, args) { + if (!isFunction$1(func)) throw new TypeError('Bind must be called on a function'); + var bound = restArguments(function(callArgs) { + return executeBound(func, bound, context, this, args.concat(callArgs)); + }); + return bound; + }); + + // Internal helper for collection methods to determine whether a collection + // should be iterated as an array or as an object. + // Related: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength + // Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094 + var isArrayLike = createSizePropertyCheck(getLength); + + // Internal implementation of a recursive `flatten` function. + function flatten$1(input, depth, strict, output) { + output = output || []; + if (!depth && depth !== 0) { + depth = Infinity; + } else if (depth <= 0) { + return output.concat(input); + } + var idx = output.length; + for (var i = 0, length = getLength(input); i < length; i++) { + var value = input[i]; + if (isArrayLike(value) && (isArray(value) || isArguments$1(value))) { + // Flatten current level of array or arguments object. + if (depth > 1) { + flatten$1(value, depth - 1, strict, output); + idx = output.length; + } else { + var j = 0, len = value.length; + while (j < len) output[idx++] = value[j++]; + } + } else if (!strict) { + output[idx++] = value; + } + } + return output; + } + + // Bind a number of an object's methods to that object. Remaining arguments + // are the method names to be bound. Useful for ensuring that all callbacks + // defined on an object belong to it. + var bindAll = restArguments(function(obj, keys) { + keys = flatten$1(keys, false, false); + var index = keys.length; + if (index < 1) throw new Error('bindAll must be passed function names'); + while (index--) { + var key = keys[index]; + obj[key] = bind(obj[key], obj); + } + return obj; + }); + + // Memoize an expensive function by storing its results. + function memoize(func, hasher) { + var memoize = function(key) { + var cache = memoize.cache; + var address = '' + (hasher ? hasher.apply(this, arguments) : key); + if (!has$1(cache, address)) cache[address] = func.apply(this, arguments); + return cache[address]; + }; + memoize.cache = {}; + return memoize; + } + + // Delays a function for the given number of milliseconds, and then calls + // it with the arguments supplied. + var delay = restArguments(function(func, wait, args) { + return setTimeout(function() { + return func.apply(null, args); + }, wait); + }); + + // Defers a function, scheduling it to run after the current call stack has + // cleared. + var defer = partial(delay, _$1, 1); + + // Returns a function, that, when invoked, will only be triggered at most once + // during a given window of time. Normally, the throttled function will run + // as much as it can, without ever going more than once per `wait` duration; + // but if you'd like to disable the execution on the leading edge, pass + // `{leading: false}`. To disable execution on the trailing edge, ditto. + function throttle(func, wait, options) { + var timeout, context, args, result; + var previous = 0; + if (!options) options = {}; + + var later = function() { + previous = options.leading === false ? 0 : now(); + timeout = null; + result = func.apply(context, args); + if (!timeout) context = args = null; + }; + + var throttled = function() { + var _now = now(); + if (!previous && options.leading === false) previous = _now; + var remaining = wait - (_now - previous); + context = this; + args = arguments; + if (remaining <= 0 || remaining > wait) { + if (timeout) { + clearTimeout(timeout); + timeout = null; + } + previous = _now; + result = func.apply(context, args); + if (!timeout) context = args = null; + } else if (!timeout && options.trailing !== false) { + timeout = setTimeout(later, remaining); + } + return result; + }; + + throttled.cancel = function() { + clearTimeout(timeout); + previous = 0; + timeout = context = args = null; + }; + + return throttled; + } + + // When a sequence of calls of the returned function ends, the argument + // function is triggered. The end of a sequence is defined by the `wait` + // parameter. If `immediate` is passed, the argument function will be + // triggered at the beginning of the sequence instead of at the end. + function debounce(func, wait, immediate) { + var timeout, previous, args, result, context; + + var later = function() { + var passed = now() - previous; + if (wait > passed) { + timeout = setTimeout(later, wait - passed); + } else { + timeout = null; + if (!immediate) result = func.apply(context, args); + // This check is needed because `func` can recursively invoke `debounced`. + if (!timeout) args = context = null; + } + }; + + var debounced = restArguments(function(_args) { + context = this; + args = _args; + previous = now(); + if (!timeout) { + timeout = setTimeout(later, wait); + if (immediate) result = func.apply(context, args); + } + return result; + }); + + debounced.cancel = function() { + clearTimeout(timeout); + timeout = args = context = null; + }; + + return debounced; + } + + // Returns the first function passed as an argument to the second, + // allowing you to adjust arguments, run code before and after, and + // conditionally execute the original function. + function wrap(func, wrapper) { + return partial(wrapper, func); + } + + // Returns a negated version of the passed-in predicate. + function negate(predicate) { + return function() { + return !predicate.apply(this, arguments); + }; + } + + // Returns a function that is the composition of a list of functions, each + // consuming the return value of the function that follows. + function compose() { + var args = arguments; + var start = args.length - 1; + return function() { + var i = start; + var result = args[start].apply(this, arguments); + while (i--) result = args[i].call(this, result); + return result; + }; + } + + // Returns a function that will only be executed on and after the Nth call. + function after(times, func) { + return function() { + if (--times < 1) { + return func.apply(this, arguments); + } + }; + } + + // Returns a function that will only be executed up to (but not including) the + // Nth call. + function before(times, func) { + var memo; + return function() { + if (--times > 0) { + memo = func.apply(this, arguments); + } + if (times <= 1) func = null; + return memo; + }; + } + + // Returns a function that will be executed at most one time, no matter how + // often you call it. Useful for lazy initialization. + var once = partial(before, 2); + + // Returns the first key on an object that passes a truth test. + function findKey(obj, predicate, context) { + predicate = cb(predicate, context); + var _keys = keys(obj), key; + for (var i = 0, length = _keys.length; i < length; i++) { + key = _keys[i]; + if (predicate(obj[key], key, obj)) return key; + } + } + + // Internal function to generate `_.findIndex` and `_.findLastIndex`. + function createPredicateIndexFinder(dir) { + return function(array, predicate, context) { + predicate = cb(predicate, context); + var length = getLength(array); + var index = dir > 0 ? 0 : length - 1; + for (; index >= 0 && index < length; index += dir) { + if (predicate(array[index], index, array)) return index; + } + return -1; + }; + } + + // Returns the first index on an array-like that passes a truth test. + var findIndex = createPredicateIndexFinder(1); + + // Returns the last index on an array-like that passes a truth test. + var findLastIndex = createPredicateIndexFinder(-1); + + // Use a comparator function to figure out the smallest index at which + // an object should be inserted so as to maintain order. Uses binary search. + function sortedIndex(array, obj, iteratee, context) { + iteratee = cb(iteratee, context, 1); + var value = iteratee(obj); + var low = 0, high = getLength(array); + while (low < high) { + var mid = Math.floor((low + high) / 2); + if (iteratee(array[mid]) < value) low = mid + 1; else high = mid; + } + return low; + } + + // Internal function to generate the `_.indexOf` and `_.lastIndexOf` functions. + function createIndexFinder(dir, predicateFind, sortedIndex) { + return function(array, item, idx) { + var i = 0, length = getLength(array); + if (typeof idx == 'number') { + if (dir > 0) { + i = idx >= 0 ? idx : Math.max(idx + length, i); + } else { + length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1; + } + } else if (sortedIndex && idx && length) { + idx = sortedIndex(array, item); + return array[idx] === item ? idx : -1; + } + if (item !== item) { + idx = predicateFind(slice.call(array, i, length), isNaN$1); + return idx >= 0 ? idx + i : -1; + } + for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) { + if (array[idx] === item) return idx; + } + return -1; + }; + } + + // Return the position of the first occurrence of an item in an array, + // or -1 if the item is not included in the array. + // If the array is large and already in sort order, pass `true` + // for **isSorted** to use binary search. + var indexOf = createIndexFinder(1, findIndex, sortedIndex); + + // Return the position of the last occurrence of an item in an array, + // or -1 if the item is not included in the array. + var lastIndexOf = createIndexFinder(-1, findLastIndex); + + // Return the first value which passes a truth test. + function find(obj, predicate, context) { + var keyFinder = isArrayLike(obj) ? findIndex : findKey; + var key = keyFinder(obj, predicate, context); + if (key !== void 0 && key !== -1) return obj[key]; + } + + // Convenience version of a common use case of `_.find`: getting the first + // object containing specific `key:value` pairs. + function findWhere(obj, attrs) { + return find(obj, matcher(attrs)); + } + + // The cornerstone for collection functions, an `each` + // implementation, aka `forEach`. + // Handles raw objects in addition to array-likes. Treats all + // sparse array-likes as if they were dense. + function each(obj, iteratee, context) { + iteratee = optimizeCb(iteratee, context); + var i, length; + if (isArrayLike(obj)) { + for (i = 0, length = obj.length; i < length; i++) { + iteratee(obj[i], i, obj); + } + } else { + var _keys = keys(obj); + for (i = 0, length = _keys.length; i < length; i++) { + iteratee(obj[_keys[i]], _keys[i], obj); + } + } + return obj; + } + + // Return the results of applying the iteratee to each element. + function map(obj, iteratee, context) { + iteratee = cb(iteratee, context); + var _keys = !isArrayLike(obj) && keys(obj), + length = (_keys || obj).length, + results = Array(length); + for (var index = 0; index < length; index++) { + var currentKey = _keys ? _keys[index] : index; + results[index] = iteratee(obj[currentKey], currentKey, obj); + } + return results; + } + + // Internal helper to create a reducing function, iterating left or right. + function createReduce(dir) { + // Wrap code that reassigns argument variables in a separate function than + // the one that accesses `arguments.length` to avoid a perf hit. (#1991) + var reducer = function(obj, iteratee, memo, initial) { + var _keys = !isArrayLike(obj) && keys(obj), + length = (_keys || obj).length, + index = dir > 0 ? 0 : length - 1; + if (!initial) { + memo = obj[_keys ? _keys[index] : index]; + index += dir; + } + for (; index >= 0 && index < length; index += dir) { + var currentKey = _keys ? _keys[index] : index; + memo = iteratee(memo, obj[currentKey], currentKey, obj); + } + return memo; + }; + + return function(obj, iteratee, memo, context) { + var initial = arguments.length >= 3; + return reducer(obj, optimizeCb(iteratee, context, 4), memo, initial); + }; + } + + // **Reduce** builds up a single result from a list of values, aka `inject`, + // or `foldl`. + var reduce = createReduce(1); + + // The right-associative version of reduce, also known as `foldr`. + var reduceRight = createReduce(-1); + + // Return all the elements that pass a truth test. + function filter(obj, predicate, context) { + var results = []; + predicate = cb(predicate, context); + each(obj, function(value, index, list) { + if (predicate(value, index, list)) results.push(value); + }); + return results; + } + + // Return all the elements for which a truth test fails. + function reject(obj, predicate, context) { + return filter(obj, negate(cb(predicate)), context); + } + + // Determine whether all of the elements pass a truth test. + function every(obj, predicate, context) { + predicate = cb(predicate, context); + var _keys = !isArrayLike(obj) && keys(obj), + length = (_keys || obj).length; + for (var index = 0; index < length; index++) { + var currentKey = _keys ? _keys[index] : index; + if (!predicate(obj[currentKey], currentKey, obj)) return false; + } + return true; + } + + // Determine if at least one element in the object passes a truth test. + function some(obj, predicate, context) { + predicate = cb(predicate, context); + var _keys = !isArrayLike(obj) && keys(obj), + length = (_keys || obj).length; + for (var index = 0; index < length; index++) { + var currentKey = _keys ? _keys[index] : index; + if (predicate(obj[currentKey], currentKey, obj)) return true; + } + return false; + } + + // Determine if the array or object contains a given item (using `===`). + function contains(obj, item, fromIndex, guard) { + if (!isArrayLike(obj)) obj = values(obj); + if (typeof fromIndex != 'number' || guard) fromIndex = 0; + return indexOf(obj, item, fromIndex) >= 0; + } + + // Invoke a method (with arguments) on every item in a collection. + var invoke = restArguments(function(obj, path, args) { + var contextPath, func; + if (isFunction$1(path)) { + func = path; + } else { + path = toPath(path); + contextPath = path.slice(0, -1); + path = path[path.length - 1]; + } + return map(obj, function(context) { + var method = func; + if (!method) { + if (contextPath && contextPath.length) { + context = deepGet(context, contextPath); + } + if (context == null) return void 0; + method = context[path]; + } + return method == null ? method : method.apply(context, args); + }); + }); + + // Convenience version of a common use case of `_.map`: fetching a property. + function pluck(obj, key) { + return map(obj, property(key)); + } + + // Convenience version of a common use case of `_.filter`: selecting only + // objects containing specific `key:value` pairs. + function where(obj, attrs) { + return filter(obj, matcher(attrs)); + } + + // Return the maximum element (or element-based computation). + function max(obj, iteratee, context) { + var result = -Infinity, lastComputed = -Infinity, + value, computed; + if (iteratee == null || typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null) { + obj = isArrayLike(obj) ? obj : values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value != null && value > result) { + result = value; + } + } + } else { + iteratee = cb(iteratee, context); + each(obj, function(v, index, list) { + computed = iteratee(v, index, list); + if (computed > lastComputed || computed === -Infinity && result === -Infinity) { + result = v; + lastComputed = computed; + } + }); + } + return result; + } + + // Return the minimum element (or element-based computation). + function min(obj, iteratee, context) { + var result = Infinity, lastComputed = Infinity, + value, computed; + if (iteratee == null || typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null) { + obj = isArrayLike(obj) ? obj : values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value != null && value < result) { + result = value; + } + } + } else { + iteratee = cb(iteratee, context); + each(obj, function(v, index, list) { + computed = iteratee(v, index, list); + if (computed < lastComputed || computed === Infinity && result === Infinity) { + result = v; + lastComputed = computed; + } + }); + } + return result; + } + + // Sample **n** random values from a collection using the modern version of the + // [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher–Yates_shuffle). + // If **n** is not specified, returns a single random element. + // The internal `guard` argument allows it to work with `_.map`. + function sample(obj, n, guard) { + if (n == null || guard) { + if (!isArrayLike(obj)) obj = values(obj); + return obj[random(obj.length - 1)]; + } + var sample = isArrayLike(obj) ? clone(obj) : values(obj); + var length = getLength(sample); + n = Math.max(Math.min(n, length), 0); + var last = length - 1; + for (var index = 0; index < n; index++) { + var rand = random(index, last); + var temp = sample[index]; + sample[index] = sample[rand]; + sample[rand] = temp; + } + return sample.slice(0, n); + } + + // Shuffle a collection. + function shuffle(obj) { + return sample(obj, Infinity); + } + + // Sort the object's values by a criterion produced by an iteratee. + function sortBy(obj, iteratee, context) { + var index = 0; + iteratee = cb(iteratee, context); + return pluck(map(obj, function(value, key, list) { + return { + value: value, + index: index++, + criteria: iteratee(value, key, list) + }; + }).sort(function(left, right) { + var a = left.criteria; + var b = right.criteria; + if (a !== b) { + if (a > b || a === void 0) return 1; + if (a < b || b === void 0) return -1; + } + return left.index - right.index; + }), 'value'); + } + + // An internal function used for aggregate "group by" operations. + function group(behavior, partition) { + return function(obj, iteratee, context) { + var result = partition ? [[], []] : {}; + iteratee = cb(iteratee, context); + each(obj, function(value, index) { + var key = iteratee(value, index, obj); + behavior(result, value, key); + }); + return result; + }; + } + + // Groups the object's values by a criterion. Pass either a string attribute + // to group by, or a function that returns the criterion. + var groupBy = group(function(result, value, key) { + if (has$1(result, key)) result[key].push(value); else result[key] = [value]; + }); + + // Indexes the object's values by a criterion, similar to `_.groupBy`, but for + // when you know that your index values will be unique. + var indexBy = group(function(result, value, key) { + result[key] = value; + }); + + // Counts instances of an object that group by a certain criterion. Pass + // either a string attribute to count by, or a function that returns the + // criterion. + var countBy = group(function(result, value, key) { + if (has$1(result, key)) result[key]++; else result[key] = 1; + }); + + // Split a collection into two arrays: one whose elements all pass the given + // truth test, and one whose elements all do not pass the truth test. + var partition = group(function(result, value, pass) { + result[pass ? 0 : 1].push(value); + }, true); + + // Safely create a real, live array from anything iterable. + var reStrSymbol = /[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g; + function toArray(obj) { + if (!obj) return []; + if (isArray(obj)) return slice.call(obj); + if (isString(obj)) { + // Keep surrogate pair characters together. + return obj.match(reStrSymbol); + } + if (isArrayLike(obj)) return map(obj, identity); + return values(obj); + } + + // Return the number of elements in a collection. + function size(obj) { + if (obj == null) return 0; + return isArrayLike(obj) ? obj.length : keys(obj).length; + } + + // Internal `_.pick` helper function to determine whether `key` is an enumerable + // property name of `obj`. + function keyInObj(value, key, obj) { + return key in obj; + } + + // Return a copy of the object only containing the allowed properties. + var pick = restArguments(function(obj, keys) { + var result = {}, iteratee = keys[0]; + if (obj == null) return result; + if (isFunction$1(iteratee)) { + if (keys.length > 1) iteratee = optimizeCb(iteratee, keys[1]); + keys = allKeys(obj); + } else { + iteratee = keyInObj; + keys = flatten$1(keys, false, false); + obj = Object(obj); + } + for (var i = 0, length = keys.length; i < length; i++) { + var key = keys[i]; + var value = obj[key]; + if (iteratee(value, key, obj)) result[key] = value; + } + return result; + }); + + // Return a copy of the object without the disallowed properties. + var omit = restArguments(function(obj, keys) { + var iteratee = keys[0], context; + if (isFunction$1(iteratee)) { + iteratee = negate(iteratee); + if (keys.length > 1) context = keys[1]; + } else { + keys = map(flatten$1(keys, false, false), String); + iteratee = function(value, key) { + return !contains(keys, key); + }; + } + return pick(obj, iteratee, context); + }); + + // Returns everything but the last entry of the array. Especially useful on + // the arguments object. Passing **n** will return all the values in + // the array, excluding the last N. + function initial(array, n, guard) { + return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n))); + } + + // Get the first element of an array. Passing **n** will return the first N + // values in the array. The **guard** check allows it to work with `_.map`. + function first(array, n, guard) { + if (array == null || array.length < 1) return n == null || guard ? void 0 : []; + if (n == null || guard) return array[0]; + return initial(array, array.length - n); + } + + // Returns everything but the first entry of the `array`. Especially useful on + // the `arguments` object. Passing an **n** will return the rest N values in the + // `array`. + function rest(array, n, guard) { + return slice.call(array, n == null || guard ? 1 : n); + } + + // Get the last element of an array. Passing **n** will return the last N + // values in the array. + function last(array, n, guard) { + if (array == null || array.length < 1) return n == null || guard ? void 0 : []; + if (n == null || guard) return array[array.length - 1]; + return rest(array, Math.max(0, array.length - n)); + } + + // Trim out all falsy values from an array. + function compact(array) { + return filter(array, Boolean); + } + + // Flatten out an array, either recursively (by default), or up to `depth`. + // Passing `true` or `false` as `depth` means `1` or `Infinity`, respectively. + function flatten(array, depth) { + return flatten$1(array, depth, false); + } + + // Take the difference between one array and a number of other arrays. + // Only the elements present in just the first array will remain. + var difference = restArguments(function(array, rest) { + rest = flatten$1(rest, true, true); + return filter(array, function(value){ + return !contains(rest, value); + }); + }); + + // Return a version of the array that does not contain the specified value(s). + var without = restArguments(function(array, otherArrays) { + return difference(array, otherArrays); + }); + + // Produce a duplicate-free version of the array. If the array has already + // been sorted, you have the option of using a faster algorithm. + // The faster algorithm will not work with an iteratee if the iteratee + // is not a one-to-one function, so providing an iteratee will disable + // the faster algorithm. + function uniq(array, isSorted, iteratee, context) { + if (!isBoolean(isSorted)) { + context = iteratee; + iteratee = isSorted; + isSorted = false; + } + if (iteratee != null) iteratee = cb(iteratee, context); + var result = []; + var seen = []; + for (var i = 0, length = getLength(array); i < length; i++) { + var value = array[i], + computed = iteratee ? iteratee(value, i, array) : value; + if (isSorted && !iteratee) { + if (!i || seen !== computed) result.push(value); + seen = computed; + } else if (iteratee) { + if (!contains(seen, computed)) { + seen.push(computed); + result.push(value); + } + } else if (!contains(result, value)) { + result.push(value); + } + } + return result; + } + + // Produce an array that contains the union: each distinct element from all of + // the passed-in arrays. + var union = restArguments(function(arrays) { + return uniq(flatten$1(arrays, true, true)); + }); + + // Produce an array that contains every item shared between all the + // passed-in arrays. + function intersection(array) { + var result = []; + var argsLength = arguments.length; + for (var i = 0, length = getLength(array); i < length; i++) { + var item = array[i]; + if (contains(result, item)) continue; + var j; + for (j = 1; j < argsLength; j++) { + if (!contains(arguments[j], item)) break; + } + if (j === argsLength) result.push(item); + } + return result; + } + + // Complement of zip. Unzip accepts an array of arrays and groups + // each array's elements on shared indices. + function unzip(array) { + var length = array && max(array, getLength).length || 0; + var result = Array(length); + + for (var index = 0; index < length; index++) { + result[index] = pluck(array, index); + } + return result; + } + + // Zip together multiple lists into a single array -- elements that share + // an index go together. + var zip = restArguments(unzip); + + // Converts lists into objects. Pass either a single array of `[key, value]` + // pairs, or two parallel arrays of the same length -- one of keys, and one of + // the corresponding values. Passing by pairs is the reverse of `_.pairs`. + function object(list, values) { + var result = {}; + for (var i = 0, length = getLength(list); i < length; i++) { + if (values) { + result[list[i]] = values[i]; + } else { + result[list[i][0]] = list[i][1]; + } + } + return result; + } + + // Generate an integer Array containing an arithmetic progression. A port of + // the native Python `range()` function. See + // [the Python documentation](https://docs.python.org/library/functions.html#range). + function range(start, stop, step) { + if (stop == null) { + stop = start || 0; + start = 0; + } + if (!step) { + step = stop < start ? -1 : 1; + } + + var length = Math.max(Math.ceil((stop - start) / step), 0); + var range = Array(length); + + for (var idx = 0; idx < length; idx++, start += step) { + range[idx] = start; + } + + return range; + } + + // Chunk a single array into multiple arrays, each containing `count` or fewer + // items. + function chunk(array, count) { + if (count == null || count < 1) return []; + var result = []; + var i = 0, length = array.length; + while (i < length) { + result.push(slice.call(array, i, i += count)); + } + return result; + } + + // Helper function to continue chaining intermediate results. + function chainResult(instance, obj) { + return instance._chain ? _$1(obj).chain() : obj; + } + + // Add your own custom functions to the Underscore object. + function mixin(obj) { + each(functions(obj), function(name) { + var func = _$1[name] = obj[name]; + _$1.prototype[name] = function() { + var args = [this._wrapped]; + push.apply(args, arguments); + return chainResult(this, func.apply(_$1, args)); + }; + }); + return _$1; + } + + // Add all mutator `Array` functions to the wrapper. + each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) { + var method = ArrayProto[name]; + _$1.prototype[name] = function() { + var obj = this._wrapped; + if (obj != null) { + method.apply(obj, arguments); + if ((name === 'shift' || name === 'splice') && obj.length === 0) { + delete obj[0]; + } + } + return chainResult(this, obj); + }; + }); + + // Add all accessor `Array` functions to the wrapper. + each(['concat', 'join', 'slice'], function(name) { + var method = ArrayProto[name]; + _$1.prototype[name] = function() { + var obj = this._wrapped; + if (obj != null) obj = method.apply(obj, arguments); + return chainResult(this, obj); + }; + }); + + // Named Exports + + var allExports = { + __proto__: null, + VERSION: VERSION, + restArguments: restArguments, + isObject: isObject, + isNull: isNull, + isUndefined: isUndefined, + isBoolean: isBoolean, + isElement: isElement, + isString: isString, + isNumber: isNumber, + isDate: isDate, + isRegExp: isRegExp, + isError: isError, + isSymbol: isSymbol, + isArrayBuffer: isArrayBuffer, + isDataView: isDataView$1, + isArray: isArray, + isFunction: isFunction$1, + isArguments: isArguments$1, + isFinite: isFinite$1, + isNaN: isNaN$1, + isTypedArray: isTypedArray$1, + isEmpty: isEmpty, + isMatch: isMatch, + isEqual: isEqual, + isMap: isMap, + isWeakMap: isWeakMap, + isSet: isSet, + isWeakSet: isWeakSet, + keys: keys, + allKeys: allKeys, + values: values, + pairs: pairs, + invert: invert, + functions: functions, + methods: functions, + extend: extend, + extendOwn: extendOwn, + assign: extendOwn, + defaults: defaults, + create: create, + clone: clone, + tap: tap, + get: get, + has: has, + mapObject: mapObject, + identity: identity, + constant: constant, + noop: noop, + toPath: toPath$1, + property: property, + propertyOf: propertyOf, + matcher: matcher, + matches: matcher, + times: times, + random: random, + now: now, + escape: _escape, + unescape: _unescape, + templateSettings: templateSettings, + template: template, + result: result, + uniqueId: uniqueId, + chain: chain, + iteratee: iteratee, + partial: partial, + bind: bind, + bindAll: bindAll, + memoize: memoize, + delay: delay, + defer: defer, + throttle: throttle, + debounce: debounce, + wrap: wrap, + negate: negate, + compose: compose, + after: after, + before: before, + once: once, + findKey: findKey, + findIndex: findIndex, + findLastIndex: findLastIndex, + sortedIndex: sortedIndex, + indexOf: indexOf, + lastIndexOf: lastIndexOf, + find: find, + detect: find, + findWhere: findWhere, + each: each, + forEach: each, + map: map, + collect: map, + reduce: reduce, + foldl: reduce, + inject: reduce, + reduceRight: reduceRight, + foldr: reduceRight, + filter: filter, + select: filter, + reject: reject, + every: every, + all: every, + some: some, + any: some, + contains: contains, + includes: contains, + include: contains, + invoke: invoke, + pluck: pluck, + where: where, + max: max, + min: min, + shuffle: shuffle, + sample: sample, + sortBy: sortBy, + groupBy: groupBy, + indexBy: indexBy, + countBy: countBy, + partition: partition, + toArray: toArray, + size: size, + pick: pick, + omit: omit, + first: first, + head: first, + take: first, + initial: initial, + last: last, + rest: rest, + tail: rest, + drop: rest, + compact: compact, + flatten: flatten, + without: without, + uniq: uniq, + unique: uniq, + union: union, + intersection: intersection, + difference: difference, + unzip: unzip, + transpose: unzip, + zip: zip, + object: object, + range: range, + chunk: chunk, + mixin: mixin, + 'default': _$1 + }; + + // Default Export + + // Add all of the Underscore functions to the wrapper object. + var _ = mixin(allExports); + // Legacy Node.js API. + _._ = _; + + return _; + +}))); +//# sourceMappingURL=underscore-umd.js.map diff --git a/docs/html/_static/underscore.js b/docs/html/_static/underscore.js index 166240ef..cf177d42 100644 --- a/docs/html/_static/underscore.js +++ b/docs/html/_static/underscore.js @@ -1,6 +1,6 @@ -!function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define("underscore",r):(n=n||self,function(){var t=n._,e=n._=r();e.noConflict=function(){return n._=t,e}}())}(this,(function(){ -// Underscore.js 1.12.0 +!function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define("underscore",r):(n="undefined"!=typeof globalThis?globalThis:n||self,function(){var t=n._,e=n._=r();e.noConflict=function(){return n._=t,e}}())}(this,(function(){ +// Underscore.js 1.13.1 // https://underscorejs.org -// (c) 2009-2020 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +// (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors // Underscore may be freely distributed under the MIT license. -var n="1.12.0",r="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},t=Array.prototype,e=Object.prototype,u="undefined"!=typeof Symbol?Symbol.prototype:null,o=t.push,i=t.slice,a=e.toString,f=e.hasOwnProperty,c="undefined"!=typeof ArrayBuffer,l="undefined"!=typeof DataView,s=Array.isArray,p=Object.keys,v=Object.create,h=c&&ArrayBuffer.isView,y=isNaN,g=isFinite,d=!{toString:null}.propertyIsEnumerable("toString"),b=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],m=Math.pow(2,53)-1;function j(n,r){return r=null==r?n.length-1:+r,function(){for(var t=Math.max(arguments.length-r,0),e=Array(t),u=0;u=0&&t<=m}}function $(n){return function(r){return null==r?void 0:r[n]}}var G=$("byteLength"),H=J(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:K(!1),Y=$("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e":">",'"':""","'":"'","`":"`"},Kn=Ln(Cn),Jn=Ln(_n(Cn)),$n=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=0;function Zn(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var nr=j((function(n,r){var t=nr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a1)er(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var cr=nr(fr,2);function lr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o0?0:u-1;o>=0&&o0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),C))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a=3;return r(n,Fn(t,u,4),e,o)}}var wr=_r(1),Ar=_r(-1);function xr(n,r,t){var e=[];return r=qn(r,t),mr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Sr(n,r,t){r=qn(r,t);for(var e=!tr(n)&&nn(n),u=(e||n).length,o=0;o=0}var Er=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),jr(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Br(n,r){return jr(n,Rn(r))}function Nr(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=tr(n)?n:jn(n)).length;ao&&(o=e);else r=qn(r,t),mr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Ir(n,r,t){if(null==r||t)return tr(n)||(n=jn(n)),n[Wn(n.length-1)];var e=tr(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i1&&(e=Fn(e,r[1])),r=an(n)):(e=Pr,r=er(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u1&&(t=r[1])):(r=jr(er(r,!1,!1),String),e=function(n,t){return!Mr(r,t)}),qr(n,e,t)}));function Wr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function zr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:Wr(n,n.length-r)}function Lr(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=er(r,!0,!0),xr(n,(function(n){return!Mr(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);ir?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o=function(r,t){e=null,t&&(u=n.apply(r,t))},i=j((function(i){if(e&&clearTimeout(e),t){var a=!e;e=setTimeout(o,r),a&&(u=n.apply(this,i))}else e=or(o,r,this,i);return u}));return i.cancel=function(){clearTimeout(e),e=null},i},wrap:function(n,r){return nr(r,n)},negate:ar,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:fr,once:cr,findKey:lr,findIndex:pr,findLastIndex:vr,sortedIndex:hr,indexOf:gr,lastIndexOf:dr,find:br,detect:br,findWhere:function(n,r){return br(n,Dn(r))},each:mr,forEach:mr,map:jr,collect:jr,reduce:wr,foldl:wr,inject:wr,reduceRight:Ar,foldr:Ar,filter:xr,select:xr,reject:function(n,r,t){return xr(n,ar(qn(r)),t)},every:Sr,all:Sr,some:Or,any:Or,contains:Mr,includes:Mr,include:Mr,invoke:Er,pluck:Br,where:function(n,r){return xr(n,Dn(r))},max:Nr,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=tr(n)?n:jn(n)).length;ae||void 0===t)return 1;if(t=0&&t<=m}}function J(n){return function(r){return null==r?void 0:r[n]}}var G=J("byteLength"),H=K(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:C(!1),Y=J("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e":">",'"':""","'":"'","`":"`"},Cn=Ln($n),Kn=Ln(_n($n)),Jn=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=/^\s*(\w|\$)+\s*$/;var Zn=0;function nr(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var rr=j((function(n,r){var t=rr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a1)ur(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var lr=rr(cr,2);function sr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o0?0:u-1;o>=0&&o0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),$))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a=3;return r(n,Fn(t,u,4),e,o)}}var Ar=wr(1),xr=wr(-1);function Sr(n,r,t){var e=[];return r=qn(r,t),jr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Or(n,r,t){r=qn(r,t);for(var e=!er(n)&&nn(n),u=(e||n).length,o=0;o=0}var Br=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),_r(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Nr(n,r){return _r(n,Rn(r))}function Ir(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ao&&(o=e);else r=qn(r,t),jr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Tr(n,r,t){if(null==r||t)return er(n)||(n=jn(n)),n[Wn(n.length-1)];var e=er(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i1&&(e=Fn(e,r[1])),r=an(n)):(e=qr,r=ur(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u1&&(t=r[1])):(r=_r(ur(r,!1,!1),String),e=function(n,t){return!Er(r,t)}),Ur(n,e,t)}));function zr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function Lr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:zr(n,n.length-r)}function $r(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=ur(r,!0,!0),Sr(n,(function(n){return!Er(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);ir?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o,i,a,f=function(){var c=zn()-u;r>c?e=setTimeout(f,r-c):(e=null,t||(i=n.apply(a,o)),e||(o=a=null))},c=j((function(c){return a=this,o=c,u=zn(),e||(e=setTimeout(f,r),t&&(i=n.apply(a,o))),i}));return c.cancel=function(){clearTimeout(e),e=o=a=null},c},wrap:function(n,r){return rr(r,n)},negate:fr,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:cr,once:lr,findKey:sr,findIndex:vr,findLastIndex:hr,sortedIndex:yr,indexOf:gr,lastIndexOf:br,find:mr,detect:mr,findWhere:function(n,r){return mr(n,Dn(r))},each:jr,forEach:jr,map:_r,collect:_r,reduce:Ar,foldl:Ar,inject:Ar,reduceRight:xr,foldr:xr,filter:Sr,select:Sr,reject:function(n,r,t){return Sr(n,fr(qn(r)),t)},every:Or,all:Or,some:Mr,any:Mr,contains:Er,includes:Er,include:Er,invoke:Br,pluck:Nr,where:function(n,r){return Sr(n,Dn(r))},max:Ir,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ae||void 0===t)return 1;if(t - Index — IDTxl 1.2.1 documentation - - - + Index — IDTxl 1.3 documentation + + + @@ -31,7 +31,7 @@

    Navigation

  • modules |
  • - +
    @@ -51,6 +51,7 @@

    Index

    | D | E | G + | H | I | J | L @@ -78,6 +79,10 @@

    A

  • ais_fdr() (in module idtxl.stats)
  • AlgorithmExhaustedError +
  • +
  • alpha_ML() (idtxl.estimators_Rudelt.RudeltAbstractNSBEstimator method) +
  • +
  • analyse_auto_MI() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method)
  • analyse_network() (idtxl.active_information_storage.ActiveInformationStorage method) @@ -123,12 +128,14 @@

    A

    B

    @@ -169,12 +180,26 @@

    C

    D

    @@ -273,18 +306,74 @@

    G

  • (idtxl.estimators_jidt.JidtGaussianCMI method)
  • +
  • get_auto_MI() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method) +
  • +
  • get_bbc_term() (idtxl.estimators_Rudelt.RudeltBBCEstimator method) +
  • +
  • get_beta_MAP() (idtxl.estimators_Rudelt.RudeltAbstractNSBEstimator method) +
  • +
  • get_bootstrap_history_dependence() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method) +
  • get_edge_list() (idtxl.results.AdjacencyMatrix method) +
  • +
  • get_embeddings() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method) +
  • +
  • get_embeddings_that_maximise_R() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method) +
  • +
  • get_H0_X_past_cond_X() (idtxl.estimators_Rudelt.RudeltShufflingEstimator method) +
  • +
  • get_H0_X_past_cond_X_eq_x() (idtxl.estimators_Rudelt.RudeltShufflingEstimator method) +
  • +
  • get_H_X_past_cond_X() (idtxl.estimators_Rudelt.RudeltShufflingEstimator method) +
  • +
  • get_H_X_past_uncond() (idtxl.estimators_Rudelt.RudeltShufflingEstimator method) +
  • +
  • get_history_dependence() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method) +
  • +
  • get_information_timescale_tau_R() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method) +
  • +
  • get_integration_bounds() (idtxl.estimators_Rudelt.RudeltAbstractNSBEstimator method) +
  • +
  • get_marginal_frequencies_of_spikes_in_bins() (idtxl.estimators_Rudelt.RudeltShufflingEstimator method)
  • +
  • get_temporal_depth_T_D() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method) +
  • +
  • get_window_delimiters() (idtxl.estimators_Rudelt.RudeltAbstractEstimator method) +
  • getit() (idtxl.multivariate_te.MultivariateTE method)
  • +

    H

    + + +
    +

    I

    @@ -576,6 +682,8 @@

    L

      @@ -353,6 +456,13 @@

      I

      +
    • + idtxl.embedding_optimization_ais_Rudelt + +
    • @@ -384,17 +494,17 @@

      I

  • - idtxl.idtxl_exceptions + idtxl.estimators_Rudelt
  • - idtxl.idtxl_import + idtxl.idtxl_exceptions
  • @@ -483,18 +593,10 @@

    I

  • module
  • -
  • import_fieldtrip() (in module idtxl.idtxl_import) - -
  • -
  • import_matarray() (in module idtxl.idtxl_import) - -
  • is_analytic_null_estimator() (idtxl.estimators_jidt.JidtDiscrete method)
  • is_parallel() (idtxl.estimators_jidt.JidtEstimator method) @@ -521,6 +625,8 @@

    I

  • (idtxl.estimators_pid.SydneyPID method)
  • (idtxl.estimators_pid.TartuPID method) +
  • +
  • (idtxl.estimators_Rudelt.RudeltAbstractEstimator method)
  • @@ -608,6 +716,8 @@

    M

  • idtxl.bivariate_te
  • idtxl.data +
  • +
  • idtxl.embedding_optimization_ais_Rudelt
  • idtxl.estimators_jidt
  • @@ -617,9 +727,9 @@

    M

  • idtxl.estimators_pid
  • -
  • idtxl.idtxl_exceptions +
  • idtxl.estimators_Rudelt
  • -
  • idtxl.idtxl_import +
  • idtxl.idtxl_exceptions
  • idtxl.idtxl_io
  • @@ -672,10 +782,10 @@

    N

  • network_fdr() (in module idtxl.stats)
  • - - + @@ -698,11 +812,17 @@

    O

  • OpenCLKraskov (class in idtxl.estimators_opencl)
  • - - + @@ -721,10 +841,14 @@

    P

  • plot_network() (in module idtxl.visualise_graph)
  • plot_network_comparison() (in module idtxl.visualise_graph) +
  • +
  • plot_selected_vars() (in module idtxl.visualise_graph)
  • print_matrix() (idtxl.results.AdjacencyMatrix method)
  • -
  • processes_analysed() (idtxl.results.ResultsSingleProcessAnalysis property) +
  • processes_analysed (idtxl.results.ResultsSingleProcessAnalysis property) + +
  • @@ -747,6 +875,8 @@

    R

  • remove_column() (in module idtxl.idtxl_utils)
  • remove_row() (in module idtxl.idtxl_utils) +
  • +
  • remove_subresults_single_process() (idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt method)
  • Results (class in idtxl.results)
  • @@ -754,17 +884,33 @@

    R

  • ResultsNetworkAnalysis (class in idtxl.results)
  • - - + @@ -776,15 +922,17 @@

    S

  • save_pickle() (in module idtxl.idtxl_io)
  • -
  • selected_vars_full() (idtxl.network_analysis.NetworkAnalysis property) +
  • selected_vars_full (idtxl.network_analysis.NetworkAnalysis property)
  • -
  • selected_vars_sources() (idtxl.network_analysis.NetworkAnalysis property) +
  • selected_vars_sources (idtxl.network_analysis.NetworkAnalysis property)
  • -
  • selected_vars_target() (idtxl.network_analysis.NetworkAnalysis property) +
  • selected_vars_target (idtxl.network_analysis.NetworkAnalysis property)
  • separate_arrays() (in module idtxl.idtxl_utils)
  • set_data() (idtxl.data.Data method) +
  • +
  • shuffling_MI() (idtxl.estimators_Rudelt.RudeltShufflingEstimator method)
  • SingleProcessAnalysis (class in idtxl.single_process_analysis)
  • @@ -803,6 +951,10 @@

    S

  • SxPID (class in idtxl.estimators_multivariate_pid)
  • SydneyPID (class in idtxl.estimators_pid) +
  • +
  • symbol_array_to_binary() (idtxl.estimators_Rudelt.RudeltAbstractEstimator method) +
  • +
  • symbol_binary_to_array() (idtxl.estimators_Rudelt.RudeltAbstractEstimator method)
  • syn_shd_against_surrogates() (in module idtxl.stats)
  • @@ -812,7 +964,7 @@

    S

    T

      @@ -823,6 +975,10 @@

      T

      U

      + + + + @@ -189,7 +194,7 @@

      Python Module Index

      Quick search

      - +
      @@ -208,13 +213,13 @@

      Navigation

    • modules |
    • - + \ No newline at end of file diff --git a/docs/html/search.html b/docs/html/search.html index dd89e61a..e0858ff7 100644 --- a/docs/html/search.html +++ b/docs/html/search.html @@ -5,11 +5,11 @@ - Search — IDTxl 1.2.1 documentation - - + Search — IDTxl 1.3 documentation + + - + @@ -37,7 +37,7 @@

      Navigation

    • modules |
    • - + @@ -48,26 +48,35 @@

      Navigation

      Search

      -
      - + + + +

      Searching for multiple words only shows matches that contain all words.

      + +
      - + + +
      +
      @@ -88,13 +97,13 @@

      Navigation

    • modules |
    • - +
      \ No newline at end of file diff --git a/docs/html/searchindex.js b/docs/html/searchindex.js index 2cd4ba0d..e9fef345 100644 --- a/docs/html/searchindex.js +++ b/docs/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["idtxl","idtxl_data_class","idtxl_estimators","idtxl_helper","idtxl_network_comparison","idtxl_network_inference","idtxl_process_analysis","idtxl_results_class","index","modules"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["idtxl.rst","idtxl_data_class.rst","idtxl_estimators.rst","idtxl_helper.rst","idtxl_network_comparison.rst","idtxl_network_inference.rst","idtxl_process_analysis.rst","idtxl_results_class.rst","index.rst","modules.rst"],objects:{"":{idtxl:[0,0,0,"-"]},"idtxl.active_information_storage":{ActiveInformationStorage:[0,1,1,""]},"idtxl.active_information_storage.ActiveInformationStorage":{analyse_network:[0,2,1,""],analyse_single_process:[0,2,1,""]},"idtxl.bivariate_mi":{BivariateMI:[0,1,1,""]},"idtxl.bivariate_mi.BivariateMI":{analyse_network:[0,2,1,""],analyse_single_target:[0,2,1,""]},"idtxl.bivariate_pid":{BivariatePID:[0,1,1,""]},"idtxl.bivariate_pid.BivariatePID":{analyse_network:[0,2,1,""],analyse_single_target:[0,2,1,""]},"idtxl.bivariate_te":{BivariateTE:[0,1,1,""]},"idtxl.bivariate_te.BivariateTE":{analyse_network:[0,2,1,""],analyse_single_target:[0,2,1,""]},"idtxl.data":{Data:[0,1,1,""]},"idtxl.data.Data":{data:[0,2,1,""],generate_logistic_maps_data:[0,2,1,""],generate_mute_data:[0,2,1,""],generate_var_data:[0,2,1,""],get_realisations:[0,2,1,""],get_seed:[0,2,1,""],get_state:[0,2,1,""],n_realisations:[0,2,1,""],n_realisations_repl:[0,2,1,""],n_realisations_samples:[0,2,1,""],permute_replications:[0,2,1,""],permute_samples:[0,2,1,""],set_data:[0,2,1,""],slice_permute_replications:[0,2,1,""],slice_permute_samples:[0,2,1,""]},"idtxl.estimators_jidt":{JidtDiscrete:[0,1,1,""],JidtDiscreteAIS:[0,1,1,""],JidtDiscreteCMI:[0,1,1,""],JidtDiscreteMI:[0,1,1,""],JidtDiscreteTE:[0,1,1,""],JidtEstimator:[0,1,1,""],JidtGaussian:[0,1,1,""],JidtGaussianAIS:[0,1,1,""],JidtGaussianCMI:[0,1,1,""],JidtGaussianMI:[0,1,1,""],JidtGaussianTE:[0,1,1,""],JidtKraskov:[0,1,1,""],JidtKraskovAIS:[0,1,1,""],JidtKraskovCMI:[0,1,1,""],JidtKraskovMI:[0,1,1,""],JidtKraskovTE:[0,1,1,""],common_estimate_surrogates_analytic:[0,3,1,""]},"idtxl.estimators_jidt.JidtDiscrete":{estimate_surrogates_analytic:[0,2,1,""],get_analytic_distribution:[0,2,1,""],is_analytic_null_estimator:[0,2,1,""]},"idtxl.estimators_jidt.JidtDiscreteAIS":{estimate:[0,2,1,""],get_analytic_distribution:[0,2,1,""]},"idtxl.estimators_jidt.JidtDiscreteCMI":{estimate:[0,2,1,""],get_analytic_distribution:[0,2,1,""]},"idtxl.estimators_jidt.JidtDiscreteMI":{estimate:[0,2,1,""],get_analytic_distribution:[0,2,1,""]},"idtxl.estimators_jidt.JidtDiscreteTE":{estimate:[0,2,1,""],get_analytic_distribution:[0,2,1,""]},"idtxl.estimators_jidt.JidtEstimator":{is_parallel:[0,2,1,""]},"idtxl.estimators_jidt.JidtGaussian":{estimate_surrogates_analytic:[0,2,1,""],get_analytic_distribution:[0,2,1,""],is_analytic_null_estimator:[0,2,1,""]},"idtxl.estimators_jidt.JidtGaussianAIS":{estimate:[0,2,1,""]},"idtxl.estimators_jidt.JidtGaussianCMI":{estimate:[0,2,1,""],get_analytic_distribution:[0,2,1,""]},"idtxl.estimators_jidt.JidtGaussianMI":{estimate:[0,2,1,""]},"idtxl.estimators_jidt.JidtGaussianTE":{estimate:[0,2,1,""]},"idtxl.estimators_jidt.JidtKraskov":{is_analytic_null_estimator:[0,2,1,""]},"idtxl.estimators_jidt.JidtKraskovAIS":{estimate:[0,2,1,""]},"idtxl.estimators_jidt.JidtKraskovCMI":{estimate:[0,2,1,""]},"idtxl.estimators_jidt.JidtKraskovMI":{estimate:[0,2,1,""]},"idtxl.estimators_jidt.JidtKraskovTE":{estimate:[0,2,1,""]},"idtxl.estimators_multivariate_pid":{SxPID:[0,1,1,""]},"idtxl.estimators_multivariate_pid.SxPID":{estimate:[0,2,1,""],is_analytic_null_estimator:[0,2,1,""],is_parallel:[0,2,1,""]},"idtxl.estimators_opencl":{OpenCLKraskov:[0,1,1,""],OpenCLKraskovCMI:[0,1,1,""],OpenCLKraskovMI:[0,1,1,""]},"idtxl.estimators_opencl.OpenCLKraskov":{is_analytic_null_estimator:[0,2,1,""],is_parallel:[0,2,1,""]},"idtxl.estimators_opencl.OpenCLKraskovCMI":{estimate:[0,2,1,""]},"idtxl.estimators_opencl.OpenCLKraskovMI":{estimate:[0,2,1,""]},"idtxl.estimators_pid":{SydneyPID:[0,1,1,""],TartuPID:[0,1,1,""]},"idtxl.estimators_pid.SydneyPID":{estimate:[0,2,1,""],is_analytic_null_estimator:[0,2,1,""],is_parallel:[0,2,1,""]},"idtxl.estimators_pid.TartuPID":{estimate:[0,2,1,""],is_analytic_null_estimator:[0,2,1,""],is_parallel:[0,2,1,""]},"idtxl.idtxl_exceptions":{AlgorithmExhaustedError:[0,4,1,""],BROJA_2PID_Exception:[0,4,1,""],JidtOutOfMemoryError:[0,4,1,""],package_missing:[0,3,1,""]},"idtxl.idtxl_import":{import_fieldtrip:[0,3,1,""],import_matarray:[0,3,1,""]},"idtxl.idtxl_io":{export_brain_net_viewer:[0,3,1,""],export_networkx_graph:[0,3,1,""],export_networkx_source_graph:[0,3,1,""],import_fieldtrip:[0,3,1,""],import_matarray:[0,3,1,""],load_json:[0,3,1,""],load_pickle:[0,3,1,""],save_json:[0,3,1,""],save_pickle:[0,3,1,""]},"idtxl.idtxl_utils":{argsort_descending:[0,3,1,""],autocorrelation:[0,3,1,""],calculate_mi:[0,3,1,""],combine_discrete_dimensions:[0,3,1,""],conflicting_entries:[0,3,1,""],discretise:[0,3,1,""],discretise_max_ent:[0,3,1,""],equal_dicts:[0,3,1,""],print_dict:[0,3,1,""],remove_column:[0,3,1,""],remove_row:[0,3,1,""],separate_arrays:[0,3,1,""],sort_descending:[0,3,1,""],standardise:[0,3,1,""],swap_chars:[0,3,1,""]},"idtxl.multivariate_mi":{MultivariateMI:[0,1,1,""]},"idtxl.multivariate_mi.MultivariateMI":{analyse_network:[0,2,1,""],analyse_single_target:[0,2,1,""]},"idtxl.multivariate_pid":{MultivariatePID:[0,1,1,""]},"idtxl.multivariate_pid.MultivariatePID":{analyse_network:[0,2,1,""],analyse_single_target:[0,2,1,""]},"idtxl.multivariate_te":{MultivariateTE:[0,1,1,""]},"idtxl.multivariate_te.MultivariateTE":{analyse_network:[0,2,1,""],analyse_single_target:[0,2,1,""],getit:[0,2,1,""]},"idtxl.network_analysis":{NetworkAnalysis:[0,1,1,""]},"idtxl.network_analysis.NetworkAnalysis":{current_value:[0,2,1,""],resume_checkpoint:[0,2,1,""],selected_vars_full:[0,2,1,""],selected_vars_sources:[0,2,1,""],selected_vars_target:[0,2,1,""]},"idtxl.network_comparison":{NetworkComparison:[0,1,1,""]},"idtxl.network_comparison.NetworkComparison":{calculate_link_te:[0,2,1,""],compare_between:[0,2,1,""],compare_links_within:[0,2,1,""],compare_within:[0,2,1,""]},"idtxl.network_inference":{NetworkInference:[0,1,1,""],NetworkInferenceBivariate:[0,1,1,""],NetworkInferenceMI:[0,1,1,""],NetworkInferenceMultivariate:[0,1,1,""],NetworkInferenceTE:[0,1,1,""]},"idtxl.results":{AdjacencyMatrix:[0,1,1,""],DotDict:[0,1,1,""],Results:[0,1,1,""],ResultsMultivariatePID:[0,1,1,""],ResultsNetworkAnalysis:[0,1,1,""],ResultsNetworkComparison:[0,1,1,""],ResultsNetworkInference:[0,1,1,""],ResultsPID:[0,1,1,""],ResultsSingleProcessAnalysis:[0,1,1,""]},"idtxl.results.AdjacencyMatrix":{add_edge:[0,2,1,""],add_edge_list:[0,2,1,""],get_edge_list:[0,2,1,""],n_edges:[0,2,1,""],n_nodes:[0,2,1,""],print_matrix:[0,2,1,""]},"idtxl.results.Results":{combine_results:[0,2,1,""]},"idtxl.results.ResultsMultivariatePID":{get_single_target:[0,2,1,""]},"idtxl.results.ResultsNetworkAnalysis":{get_single_target:[0,2,1,""],get_target_sources:[0,2,1,""],targets_analysed:[0,2,1,""]},"idtxl.results.ResultsNetworkComparison":{get_adjacency_matrix:[0,2,1,""],get_single_target:[0,2,1,""],get_target_sources:[0,2,1,""],print_edge_list:[0,2,1,""]},"idtxl.results.ResultsNetworkInference":{get_adjacency_matrix:[0,2,1,""],get_target_delays:[0,2,1,""],print_edge_list:[0,2,1,""]},"idtxl.results.ResultsPID":{get_single_target:[0,2,1,""]},"idtxl.results.ResultsSingleProcessAnalysis":{get_significant_processes:[0,2,1,""],get_single_process:[0,2,1,""],processes_analysed:[0,2,1,""]},"idtxl.single_process_analysis":{SingleProcessAnalysis:[0,1,1,""]},"idtxl.stats":{ais_fdr:[0,3,1,""],check_n_perm:[0,3,1,""],max_statistic:[0,3,1,""],max_statistic_sequential:[0,3,1,""],max_statistic_sequential_bivariate:[0,3,1,""],mi_against_surrogates:[0,3,1,""],min_statistic:[0,3,1,""],network_fdr:[0,3,1,""],omnibus_test:[0,3,1,""],syn_shd_against_surrogates:[0,3,1,""],unq_against_surrogates:[0,3,1,""]},"idtxl.visualise_graph":{plot_mute_graph:[0,3,1,""],plot_network:[0,3,1,""],plot_network_comparison:[0,3,1,""],plot_selected_vars:[0,3,1,""]},idtxl:{active_information_storage:[0,0,0,"-"],bivariate_mi:[0,0,0,"-"],bivariate_pid:[0,0,0,"-"],bivariate_te:[0,0,0,"-"],data:[0,0,0,"-"],estimators_jidt:[0,0,0,"-"],estimators_multivariate_pid:[0,0,0,"-"],estimators_opencl:[0,0,0,"-"],estimators_pid:[0,0,0,"-"],idtxl_exceptions:[0,0,0,"-"],idtxl_import:[0,0,0,"-"],idtxl_io:[0,0,0,"-"],idtxl_utils:[0,0,0,"-"],multivariate_mi:[0,0,0,"-"],multivariate_pid:[0,0,0,"-"],multivariate_te:[0,0,0,"-"],network_analysis:[0,0,0,"-"],network_comparison:[0,0,0,"-"],network_inference:[0,0,0,"-"],results:[0,0,0,"-"],single_process_analysis:[0,0,0,"-"],stats:[0,0,0,"-"],visualise_graph:[0,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","function","Python function"],"4":["py","exception","Python exception"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:function","4":"py:exception"},terms:{"00001":[0,6],"0068910":0,"010":[0,5],"0109462":[0,1],"016":[0,6],"0262":[0,5],"03356":[0,6],"051112":[0,5,6],"066138":[0,2],"100":[0,5,6],"1000":[0,1,6],"10000":[0,1],"1004":[0,6],"1007":[0,1,5],"1016":[0,6],"1024":[0,2],"1103":[0,5,6],"1371":[0,1],"1995":[0,7],"1st":[0,1],"1th":[0,1],"200":[0,2,3,5,6],"2000":[0,2,5],"2001":[0,1],"2002":[0,3,6],"2004":[0,2],"2010":[0,6],"2011":[0,5,6],"2012":[0,2,5,6],"2013":0,"2014":[0,1,2,6],"2017":[0,2],"2018":[0,2],"2020":[0,6],"208":[0,2,6],"2161":[0,2,6],"2183":[0,2,6],"2515":[0,6],"271":[0,2],"2pid":[0,2],"3000":[0,1],"3389":[0,6],"3390":[0,2,6],"461":[0,2,5],"463":[0,1],"464":[0,5],"474":[0,1],"500":[0,3,4,5,6],"5000":[0,1],"530":[0,2],"870":[0,3],"878":[0,3],"abstract":[0,2],"boolean":[0,2],"break":[0,2],"class":[0,2,4,5,6,8],"default":[0,1,2,3,4,5,6,7],"export":0,"final":[0,2,5,6],"float":[0,1,2,3,4,5,6,7],"function":[0,1,2,5,6,8],"import":0,"int":[0,1,2,3,4,5,6,7],"new":[0,1],"null":[0,2],"return":[0,1,2,3,4,5,6,7],"true":[0,1,2,3,4,5,6,7],"v\u00f6gler":[0,6],"var":[0,1,2],"while":[0,1,2],AIS:[0,2,3,7,8],For:[0,1,2,3,5,6],ONE:[0,1],The:[0,2,3,4,5,8],There:[0,7],Use:[0,3],Uses:[0,5,6],_create_surrogate_t:[0,3],_single_target:[0,7],about:[0,4,6,7],abov:[0,2],abs:[0,6],absolut:[0,7],abzing:[0,2],accept:[0,1],access:[0,7],accord:[0,1,3],across:[0,3],actic:[0,2],activ:[0,2,3,7,8],active_information_storag:[6,8,9],activeinformationstorag:[0,6],actual:[0,1,2,3],adapt:[0,3],add:[0,2,5,6],add_condit:[0,5,6],add_edg:0,add_edge_list:0,added:[0,2,5,6,7],adding:[0,5,6],addit:[0,1],addition:[0,7],adjac:[0,7],adjacency_matrix:0,adjacencymatrix:[0,7],after:[0,3],again:[0,2,5],against:[0,3],ais:[0,6,7],ais_fdr:[0,3,6],ais_pval:[0,7],ais_sign:[0,7],albert:[0,2],alg_num:[0,2],algorithm:[0,2,7,8],algorithm_num:[0,2],algorithmexhaustederror:[0,3],all:[0,1,2,3,4,5,6,7],allow:[0,1,2,3],along:[0,3],alph1:[0,2],alph2:[0,2],alph:[0,2,6],alph_s1:[0,2,6],alph_s2:[0,2,6],alph_t:[0,2,6],alpha:[0,3,4,5,6,7],alpha_:[0,5,6],alpha_comp:[0,4],alpha_fdr:[0,3],alpha_max_seq:[0,3],alpha_max_stat:[0,3],alpha_mi:[0,3,7],alpha_min_stat:[0,3],alpha_omnibu:[0,3],alphabet:[0,2],alphc:[0,2],alreadi:[0,2,5],also:0,alwai:[0,2],analys:[0,1,7],analyse_network:[0,5,6],analyse_single_process:[0,6],analyse_single_target:[0,5,6],analysi:[0,1,2,3,4,5,7,8],analysis_setup:[0,3],analyt:[0,2],analyticnulldistribut:[0,2],analyz:[0,6],ani:[0,1],anoth:[0,2],appli:[0,2,3],approach:0,arang:[0,1],arg:[0,1,2,3,4,5,6,7],argsort_descend:[0,3],argument:[0,2],arrai:[0,1,2,3,4,5,6,7],array_nam:0,arxiv:[0,6],assign:[0,4],assum:[0,2],assumpt:[0,3],astyp:[0,6],attemp:[0,2],attempt:[0,2],attribut:[0,1,3,5,6,7],author:0,autocorrel:[0,3],autodetect:0,autoregress:[0,1],avail:[0,2,7],averag:[0,2],avg:[0,7],axes:[0,1],axi:[0,3],axisand:0,baccala:[0,1],back:[0,1],base:[0,2,3,4,5,6],basi:0,basic:[0,3],becaus:[0,1,2,3],been:[0,2,4,7],beer:[0,6],befor:[0,2,7],being:8,benjamini:[0,7],bertsching:[0,2,6],between:[0,2,3,4,5,6],big:[0,3],bigger:[0,3],bin:[0,2,3],binari:[0,7],biol:[0,1],bit:[0,2],bivar:0,bivari:[0,2,3,7,8],bivariate_mi:[5,8,9],bivariate_pid:[6,8,9],bivariate_t:[5,8,9],bivariatemi:[0,5],bivariatepid:[0,6],bivariatet:[0,5],block:[0,1],block_siz:[0,1],bmi:8,bnv:0,bool:[0,1,2,3,4,5,6,7],both:[0,2,3,4,7],bound:[0,2],boundari:[0,2],brain:0,brainnet:0,broja:[0,2],broja_2pid:[0,2],broja_2pid_except:0,bte:8,calcclass:[0,2],calcul:[0,1,2,3,4,5,6],calculate_link_t:[0,4],calculate_mi:[0,3],call:[0,2,3,5,6],can:[0,1,2,3,4,5,6,7],candid:[0,3,5,6],candidate_set:[0,3],cannot:[0,2,3],caus:0,causal:[0,5,6],chang:[0,2],channel:0,charact:[0,1,3],check:[0,2,3,4],check_n_perm:[0,3],checkpoint:[0,5,6],child:[0,2],choos:[0,3],chosen:[0,1],chunk:[0,2],circular:[0,1],ckp:0,cmi:[0,2,4,5,6],cmi_diff_ab:[0,7],cmi_estim:[0,4,5,6,7],code:[0,2],coeffici:[0,1,3],coefficient_matric:[0,1],coher:[0,1],collect:[0,4],color:0,column:[0,3],com:[0,2],combin:[0,1,3],combine_discrete_dimens:[0,3],combine_result:0,come:0,common:[0,2],common_estimate_surrogates_analyt:[0,2],commonli:0,comp:[0,5],compar:[0,1,3,4,7],compare_between:[0,4],compare_links_within:[0,4],compare_within:[0,4],comparison:[0,3,8],complet:[0,3],complex:[0,2,6],comprehens:0,comput:[0,2,5,6],computecombinedvalu:[0,3],concaten:[0,2],concept:[0,1],condit:[0,2,3,4,5,6,7],conditionalmutualinfocalculatormultivariategaussian:[0,2],cone:[0,2],cone_solv:[0,2],confid:[0,2],conflict:0,conflicting_entri:[0,3],connect:[0,4,5,7],connectom:0,consid:[0,3,5],consist:[0,1,5],consol:[0,2,3,4,5,6,7],constant:[0,3],construct:[0,5],contain:[0,2,3,5,6,7],content:9,context:[0,2],continu:[0,2,3],contribut:0,control:[0,2,4],conveni:[0,7],converg:[0,2],convert:0,coordin:0,copi:[0,3],corr:[0,3],correct:[0,3,5,6,7],correct_by_target:[0,3],correl:[0,3],correspond:[0,1,2,7],could:0,count:[0,1,2],coupl:[0,1],cpu:[0,8],crash:[0,5,6],creat:[0,1,3,4],creation:[0,1,3,4,5,6],criterion:[0,7],critic:[0,3,4,5,6],current:[0,1,2,3,5,6,7],current_valu:[0,1,5,6,7],cybern:[0,1],data:[2,3,4,5,6,7,8,9],data_1:[0,1],data_2:[0,1],data_a:[0,4],data_b:[0,4],data_mut:[0,1],data_new:[0,1],data_properti:[0,7],data_set_a:[0,4],data_set_b:[0,4],debug:[0,2],decomposit:[0,2,7,8],decreas:[0,2],decrement:[0,2],defin:[0,2,3],degre:[0,2,3],delai:[0,2,7],denomin:[0,3],depend:[0,1,4],depth:[0,5,6],deriv:[0,3],descend:[0,3],describ:[0,2,5,6,7],descric:[0,2],descript:[0,5,6],detail:[0,2,3,4,5,6,7],detect:[0,3,4,5,6],determin:[0,1,7],deviat:[0,1,3],devic:[0,2],dict:[0,1,2,3,4,5,6,7],dict_1:[0,3],dict_2:[0,3],dictionari:[0,2,3,7],diff_ab:[0,7],differ:[0,1,2,3,4,7],differenti:[0,2,6],digraph:0,dim_ord:[0,1],dimens:[0,1,2,3],dimension:[0,1,3],direct:[0,1,2],discoveri:[0,3],discret:[0,1,2,3],discretis:[0,2,3],discretise_max_:[0,3],discretise_method:[0,2],discretisemaxentropi:[0,3],discuss:8,disk:[0,5,6],displai:0,display_edge_label:0,distanc:[0,2],distribut:[0,2,3,6,7],divid:[0,3],docstr:[0,5,6],document:[0,2,3,4,5,6,7],doe:[0,2,3],doi:[0,1,2,5,6],don:0,done:[0,3,6],dot:[0,7],dotdict:0,down:[0,3],due:[0,2],duplic:0,dynam:[0,1,2,8],e109462:[0,1],e16042161:[0,2,6],e68910:0,each:[0,1,2,3,4,5,6,7],eco:[0,2],edg:[0,7],effect:[0,4,5,7],effici:0,either:[0,2,3,5,6,7],embed:[0,1,2,4,5,6],empir:[0,2],empti:[0,1],enabl:[0,5,6],engin:0,enough:[0,3],enter:[0,7],entri:[0,1,3,4,7],entropi:[0,1,2,3,6,7,8],equal:[0,2,3],equal_dict:[0,3],equival:[0,7],err:0,error:[0,2],establish:[0,1],estim:[0,1,3,4,5,6,7,8],estimate_parallel:[0,2],estimate_surrogates_analyt:[0,2],estimators_:[0,4,5,6],estimators_ai:[],estimators_cmi:[],estimators_fast_pid:[],estimators_fast_pid_ext_rep:[],estimators_jidt:[2,8,9],estimators_mi:[],estimators_multivariate_pid:[8,9],estimators_opencl:[2,8,9],estimators_pid:[2,6,8,9],estimators_t:[],evenli:[0,3],everi:[0,2,5,6],exact:[0,2],exampl:[0,1,3,4,5,6],except:0,exclud:[0,5],exist:[0,1],expect:[0,1],experiment:[0,4],explan:0,exponenti:[0,2],export_brain_net_view:0,export_networkx_graph:0,export_networkx_source_graph:0,extens:[0,5,6],extern:0,face:[0,4],fae:[0,1,5,6],fall:[0,1],fals:[0,1,2,3,5,6],fast:[0,2],faster:[0,3],fdr:[0,3,5,7],fdr_constant:[0,3],fdr_correct:[0,5,6],femal:[0,4],fewer:[0,7],field:[0,3],fieldtrip:0,fieldtriptoolbox:0,fifth:0,figur:0,file:[0,5,6],file_nam:0,file_path:0,file_vers:0,filename_ckp:[0,5,6],find:[0,2,5,6],first:[0,1,2,4],fit:[0,1],five:[0,1],fix:[0,1],fninf:[0,6],follow:[0,1],forc:[0,5,6],form:[0,1],format:[0,1,2],forth:[0,3],found:[0,5,6],four:[0,4,5],fourth:0,free:[0,5],freedom:[0,3],from:[0,1,2,3,4,5,6,7],front:[0,2,6],fsampl:0,ft2idtxl:[],ft_datatype_raw:0,ft_struct_nam:0,ft_trial_2_numpyarrai:0,full:[0,3,5],further:[0,4,5,6],futur:[0,2],galusk:[0,6],gaussian:[0,1,2],gener:[0,1,3,7],generate_logistic_maps_data:[0,1],generate_mute_data:[0,1,5,6],generate_var_data:[0,1],genoves:[0,3],get:[0,1,7],get_adjacency_matrix:[0,7],get_analytic_distribut:[0,2],get_edge_list:0,get_realis:[0,1],get_se:[0,1],get_significant_process:[0,7],get_single_process:[0,7],get_single_target:[0,7],get_stat:[0,1],get_target_delai:[0,7],get_target_sourc:[0,7],getit:0,github:[0,2,3,8],give:[0,2],given:[0,1,2,3,7],glass:0,good:0,googl:8,gpu:[0,8],gpuid:[0,2],granger:[0,5,6],graph:0,grassberg:[0,2],greedi:0,group:[0,8],gutknecht:[0,6],halv:[0,2],handl:0,hard:[0,2],has:[0,1,2,3,4,5,7],have:[0,1,2,3,4,5,6,7,8],hdf5:0,head:8,hehlotler:[0,3],hellother:[0,3],help:0,helper:8,henc:[0,2,5],here:[0,2],high:[0,2,7],higher:0,highest:[0,3,7],highest_protocol:0,histori:[0,2],history_sourc:[0,2],history_target:[0,2],hit:[0,2],hold:0,home:0,hopefulli:0,host:8,hous:[0,4],how:[0,2],howev:[0,2],html:0,http:[0,1,2,3,5,6],human:0,hypothesi:[0,2],i_1:[0,3],i_2:[0,3],i_list:0,identifi:[0,3,7],idtxl:[1,2,3,4,5,6,7],idtxl_checkpoint:[0,5,6],idtxl_except:[8,9],idtxl_import:[8,9],idtxl_io:[8,9],idtxl_util:[3,8,9],idx:[0,1,5,6],idx_al:[0,3],idx_list:[0,1],idx_realis:[0,1],idx_singl:[0,3],ignor:[0,2],implement:[0,1,2,4],implicitli:[0,1],import_fieldtrip:0,import_matarrai:0,improv:[0,2],includ:[0,3,7],incom:[0,2],inconveni:0,increment:[0,2],ind:[0,1],indent:[0,3],independ:[0,2,4],index:[0,1,3,4,5,6,7,8],indic:[0,1,2,3,5,6,7],individu:[0,2,3,5,6,7],infer:[0,3,4,6,8],influenc:[0,5],infodynam:[0,3],infor:[0,2],inform:[0,1,3,4,7,8],initi:[0,1,2],initial_st:[0,1],initialis:[0,1],inner:[0,2,5],input:[0,2,3],inputarg_vers:0,ins:[0,6],insid:0,instanc:[0,1,2,3,4,5,6,7],instanti:[0,2],instead:[0,1,2,3,5,6],institut:[0,5],int32:[0,2],intact:[0,1],integ:[0,1],interact:[0,7],intermedi:[0,2],intern:0,is_analytic_null_estim:[0,2],is_parallel:[0,2],issu:8,iter:[0,5,6],its:[0,2,7],j_list:0,java:[0,2],jidt:[0,3,8],jidtdiscret:[0,2],jidtdiscreteai:[0,2],jidtdiscretecmi:[0,2],jidtdiscretemi:[0,2],jidtdiscretet:[0,2],jidtestim:[0,2],jidtgaussian:[0,2],jidtgaussianai:[0,2],jidtgaussiancmi:[0,2],jidtgaussianmi:[0,2],jidtgaussiant:[0,2],jidtkraskov:[0,2],jidtkraskovai:[0,2],jidtkraskovcmi:[0,2,5,6],jidtkraskovmi:[0,2],jidtkraskovt:[0,2],jidtoutofmemoryerror:[0,2],joint:[0,2,3,4,5],joseph:[0,2],jost:[0,2,6],journal:[0,1],jpackag:[0,2],jpype:[0,2],json:0,keep:[0,1,2],kei:[0,3],keyword:[0,7],knn:[0,2],kraskov:[0,2],kraskov_k:[0,2],ksg:[0,2],kwarg:0,label:0,labl:0,lag:[0,1,2,5,6,7],lag_mi:[0,2],lags_pid:[0,6],larger:[0,2],last:[0,3],later:0,latter:[0,2],lattic:[0,7],lazar:[0,3],len:[0,3],lenght:[0,6],length:[0,1,2,3,6],les:0,lett:[0,2,5],level:[0,2,3,4,5,6],like:[0,7],limit:[0,2],lindner:[0,5],line:[0,4],linear:[0,1],link:[0,3,4,5,7],link_a:[0,4],link_b:[0,4],list:[0,1,3,4,5,6,7],lizier:[0,2,3,5,6],load:0,load_json:0,load_pickl:0,local:[0,1,2,6],local_valu:[0,2],locat:0,logic:[0,3],logical_xor:[0,6],logist:[0,1],longer:0,look:[0,7,8],loop:[0,2],loos:[0,1],lowest:[0,3],machin:[0,2],made:[0,3],mai:[0,2,7],make:[0,2,3],makkeh:[0,2,6],male:[0,4],mani:[0,2],manual:0,map:[0,1,3],mar:0,marinazzo:[0,1],mass:[0,2],mat:0,matarray2idtxl:[],matarray2idtxlconvert:0,match:[0,4],mathwork:0,matlab:[0,1],matplotlib:0,matric:[0,1],matrix:[0,1,7],matrixutil:[0,3],max:[0,1,3,5],max_ent:[0,2],max_it:[0,2,6],max_lag:[0,5,6],max_lag_sourc:[0,5],max_lag_target:[0,5],max_p:[0,7],max_p_lag:[0,7],max_seq:[0,5],max_shift:[0,1],max_stat:[0,5,6],max_statist:[0,3],max_statistic_sequenti:[0,3],max_statistic_sequential_bivari:[0,3],max_t:[0,7],max_te_lag:[0,7],max_unsuc_swaps_row_parm:[0,2,6],maximis:[0,5,6],maximum:[0,1,2,3,5,6,7],measur:[0,2,5,6,7],mem:[0,2],memori:0,messag:0,method:[0,1,2,3,4,5,6,7],mi_against_surrog:[0,3],mi_omnibu:[0,5],mi_sign_sourc:[0,5],michael:0,mikhail:[0,2],min:[0,3],min_lag:[0,5],min_lag_sourc:[0,5],min_stat:[0,5,6],min_statist:[0,3],minimum:[0,3,5],mis:[0,5],misinform:0,miss:0,mmi:8,mni:0,mni_coord:0,model:[0,1,5],modul:[2,4,5,6,8,9],montalto:[0,1],more:[0,2,5,6,8],mpg:[0,5],mte:8,multi:[0,3],multipl:[0,1,2,4,6,7],multipli:[0,3],multivar:0,multivari:[0,1,2,3,4,7,8],multivariate_mi:[5,8,9],multivariate_pid:[6,8,9],multivariate_t:[5,8,9],multivariatemi:[0,5],multivariatepid:[0,6],multivariatet:[0,3,5,7],must:[0,1,2,3,6],mute:[0,1],mutual:[0,2,3,6,8],n_chunk:[0,2],n_discrete_bin:[0,2],n_edg:0,n_node:[0,7],n_perm:[0,2,3],n_perm_:[0,5,6],n_perm_comp:[0,4],n_perm_max_seq:[0,3,5],n_perm_max_stat:[0,3,5,6],n_perm_mi:[0,3],n_perm_min_stat:[0,3,5,6],n_perm_omnibu:[0,3,5],n_process:[0,1],n_realis:[0,1,7],n_realisations_repl:[0,1],n_realisations_sampl:[0,1],n_replic:[0,1],n_sampl:[0,1],name:[0,5,6],nat:[0,2],nearest:[0,2],nearli:[0,2],necessari:[0,1],need:[0,2],neighborhood:[0,2],neighbour:[0,2],neighbour_search_cuda:[],neighbour_search_opencl:[],neighbour_search_opencl_old:[],network:[0,1,3,6,8],network_a:[0,4],network_analysi:[5,6,8,9],network_b:[0,4],network_comparison:[4,8,9],network_fdr:[0,3,5,7],network_infer:[8,9],network_set_a:[0,4],network_set_b:[0,4],networkanalysi:0,networkcomparison:[0,4],networkinfer:0,networkinferencebivari:0,networkinferencemi:0,networkinferencemultivari:0,networkinferencet:0,networkx:0,neural:[0,1,6],neuroimag:[0,3],neuroinf:[0,6],neurophysiolog:0,neurosci:[0,5],never:[0,2],next:[0,2],nichol:[0,3],nitrc:0,node:[0,3,5,8],node_color:0,node_s:0,nois:[0,1,2],noise_level:[0,2],noise_std:[0,1],nollo:[0,5,6],non:[0,1,3,5,6],none:[0,1,2,3],nonlinear:[0,5,6],nonneg:[0,6],nonuniform:[0,5,6],normalis:[0,1,2,6,7],notat:[0,7],note:[0,1,2,3,4,5,6,7],novel:[0,1],now:[0,3],num_rep:[0,2,6],num_thread:[0,2],number:[0,1,2,3,4,5,6,7],numbin:[0,3],numer:[0,2],numpi:[0,1,2,3,4,5,7],obj:0,object:[0,1,2,3,4],observ:[0,2,4,5],obtain:[0,3],occur:0,offer:0,olbrich:[0,2,6],old:[0,3],omnibu:[0,3,5],omnibus_pv:0,omnibus_sign:0,omnibus_t:0,omnibus_test:[0,3],onc:[0,2],one:[0,2,3,4,6],onli:[0,1,2,3,5],opencl:[0,8],openclkraskov:[0,2],openclkraskovcmi:[0,2],openclkraskovmi:[0,2],oppos:[0,2],optim:[0,2],option:[0,1,2,3,4,5,6,7],order:[0,1,3],org:[0,1,2,5,6],orgini:[0,1],origin:[0,1,2,3],other:[0,3,5,6],otherwis:[0,1,3],our:[0,2],out:0,outer:[0,2],outofmemoryexcept:0,output:[0,2,4,5,6,7],outsid:[0,2],over:[0,1,2,3,4,5],overwrit:[0,1,2],own:[0,5,6],p_valu:[0,3],packag:[2,9],package_miss:0,pad:[0,2],page:[0,3,8],pair:[0,5,6],paper:[0,1,3],parallel:[0,1,2,3],paramet:[0,2,3,4,5,6],parent:[0,2,7],part:[0,4],partial:[0,1,2,3,7,8],partial_information_decomposit:[0,3],partic:[0,2],particip:[0,4],particular:[0,3],partit:[0,3],pass:[0,2,3,4],past:[0,2,3,4,5,6,7],path:0,patient:[0,4],pattern:[0,1],pdf:[0,5],per:[0,1,2],perform:[0,2,3,5,6],performancetip:[0,3],perm_rang:[0,1],perm_set:[0,1],perm_typ:[0,1],permut:[0,1,2,3,4,5,6],permute_in_tim:[0,3,4,5,6],permute_repl:[0,1],permute_sampl:[0,1,4,5,6],permutet:[0,1],perspect:[0,2],phy:[0,2,5,6],physrev:[0,5,6],physrevlett:[0,5],pickl:0,pid:[0,3,7,8],pid_analysi:[0,6],pid_calc_nam:[0,6],pid_estim:[0,6],pipa:[0,5],pl00007990:[0,1],planck:[0,5],platform:[0,2],plo:[0,1],plot:0,plot_mute_graph:0,plot_network:0,plot_network_comparison:0,plot_selected_var:0,plug:[0,2],point:[0,1,2,3,7],pointless:[0,3],pointwis:0,pone:[0,1],porta:[0,5,6],possibl:[0,2,3],potenti:[0,5],power:[0,3],practic:[0,2],predict:[0,3],preprint2012_25:[0,5],preprint:[0,5],present:[0,3],pretti:[0,3],previous:[0,5,6],priesemann:[0,6],print:[0,2,3,7],print_dict:[0,3],print_edge_list:[0,7],print_matrix:0,printer:[0,3],probabl:[0,2],problem:8,proc:[0,1],process:[0,1,2,3,4,5,6,7],process_set:[0,6],processes_analys:[0,7],produc:0,program:[0,2],project:0,prokopenko:[0,2,6],properti:[0,1,2,7],propos:[0,1,2],protocol:0,provid:[0,1,2,3,4,7],prune:[0,3,5,6],psr:[0,1],ptw:[0,7],pval:[0,7],pvalu:[0,5,6,7],pvalue_omnibu:[0,5],pvalues_sign_sourc:[0,5],pyinfo:[],pypi:[0,2],python3:0,python:[0,2,3],qualit:0,quantifi:[0,2,6],rais:[0,1,2,3],randint:[0,6],random:[0,1,2,6,7],rang:[0,1,2,3],rank:[0,3],rate:[0,3],rauh:[0,2,6],raw:[0,1,2,3,4,5,6],read:0,realis:[0,1,2,3,5,6,7],realiz:[0,2],recogn:0,record:[0,4],recurs:0,reduc:0,redund:[0,7],ref:0,refer:[0,1,2,3,5,6],regard:[0,7],regular:0,relationship:[0,2],relev:[0,3,5,6],remain:[0,3],reman:[0,3],remanin:[0,3],remov:[0,2,3],remove_column:[0,3],remove_row:[0,3],repeat:[0,3],repetit:[0,1],repl:[0,1],replic:[0,1,2,3,4,5,6],report:[0,8],repres:[0,1,2,3,7],request:[0,1,3],requir:[0,2,3],res_network:[0,7],res_pid:[0,7],reshap:[0,1],respect:[0,2,5],restrict:[0,3],result:[1,2,3,4,5,6,8,9],resultsmultivariatepid:[0,6,7],resultsnetworkanalysi:0,resultsnetworkcomparison:[0,4,7],resultsnetworkinfer:[0,3,5,7],resultspid:[0,6,7],resultssingleprocessanalysi:[0,3,6,7],resum:[0,5,6],resume_checkpoint:[0,5,6],retriev:[0,5,6],return_calc:[0,2],return_count:[0,2],rev:[0,2,5,6],rlz:[0,7],robot:[0,2],round:[0,3],routin:0,row:[0,2,3],rubinov:[0,5],run:[0,1,2],s10827:[0,5],s1_unq:[0,7],s2_unq:[0,7],same:[0,1,2,3,4,5,6],sameshima:[0,1],sampl:[0,1,2,3,5,6,7],save:[0,2,3],save_json:0,save_pickl:0,scheme:[0,1],schreiber:[0,2,5],sci:[0,2,6],scipi:[0,3],search:[0,2,5,6,8],second:[0,2,3,4],see:[0,2,3,4,5,6,7],seed:[0,1],select:[0,3,4,5,6],selected_sources_pv:0,selected_sources_t:0,selected_var:[0,7],selected_vars_ful:[0,5,6],selected_vars_sourc:[0,5,7],selected_vars_target:[0,5,7],sensor:0,separ:[0,3,5],separate_arrai:[0,3],sequenti:[0,3],seri:[0,1,2],set:[0,1,2,3,4,5,6,7],set_data:[0,1],set_estim:[],setup:[0,3],sever:[0,1],shape:[0,3],share:[0,2,3,6,7],shd_s1_s2:[0,7],shift:[0,1],should:[0,2,3],show:0,shuffl:[0,1,3,4,5,6],side:[0,4],sign:[0,6],sign_ominbu:[0,5],sign_sourc:0,signal:0,signific:[0,3,4,5,6,7],significantli:[0,3],similar:[0,2],simul:[0,1],singl:[0,3,4,5,6,7],single_process_analysi:[8,9],single_process_storag:[],singleprocessanalysi:0,singleton:0,size:[0,1,2],slice:[0,1],slice_permute_repl:[0,1],slice_permute_sampl:[0,1],small:[0,1,3],smaller:[0,2,3],smallest:[0,7],soft:[0,2],softwar:0,solver:[0,2],solver_arg:[0,2],some:[0,2],sort:[0,3],sort_descend:[0,3],sortind:[0,3],sourc:[0,1,2,3,4,5,6,7],source_1:[0,7],source_2:[0,7],source_i:[0,7],source_set:[0,5],source_target_delai:[0,2],sources_test:0,space:[0,2,5,6],specif:[0,7],specifi:[0,1,5,6,7],spr:[0,1],squar:[0,1],squeez:0,stage:[0,2],stai:[0,1],stamp:0,stand:0,standard:[0,1,3],standardis:[0,1,2,3,7],start:[0,1],stat:[5,6,7,8,9],state:[0,1,2,5,6,7],statis:[0,3],statist:[0,1,3,4,5,6,7],statistic_omnibu:[0,5],statistic_sign_sourc:[0,5],stats_typ:[0,4],step:[0,5,6],stochast:[0,1,7],stoegbauer:[0,2],stop:[0,3],storag:[0,2,3,7,8],store:[0,1,7],str:[0,1,2,4,5,6,7],strategi:[0,1],string:[0,1,3,5,6],structur:[0,1],studi:[0,2],style:0,subject:[0,4],submodul:[8,9],subplot:0,subset:[0,3,6],suffici:[0,1],sum_i:[0,3],support:[0,2],surrog:[0,1,2,3,4,5,6,7],surrogate_distribut:[0,7],swap:[0,1,2,3],swap_char:[0,3],swapax:0,sxpid:[0,6],sydneypid:[0,2,6],syn_s1_s2:[0,7],syn_shd_against_surrog:[0,3],synergist:[0,2,3,6,7],system:[0,2],tabl:[0,3],tail:[0,4],tail_comp:[0,4],take:[0,1],taken:[0,2,3],target1:[0,6],target:[0,2,3,4,5,6,7],targets_analys:[0,7],tartupid:[0,2],task:[0,4],tau:[0,2,6],tau_sourc:[0,2,5],tau_target:[0,2,5],te_max_candid:[0,3],te_min_candid:[0,3],technic:[0,2],techniqu:[0,5,6],tempor:[0,1,2,5,6],test:[0,1,3,4,5,6,7],text:0,than:[0,2,3],thei:[0,2],theiler:[0,2],theiler_t:[0,2],them:0,theoret:[0,3,7,8],theori:0,thi:[0,1,2,3,4,5,6,7],third:[0,2],those:0,thread:[0,2],three:[0,1,2,5,6],threshold:[0,3],through:[0,5,6],thu:[0,1],time:[0,1,2,3,4,5,6],toggl:[0,4,5,6],too:[0,1,2],tool:[0,6],toolbox:[0,1],toolkit:[0,2],total:[0,1,2,7],tracker:8,tranfer:[0,7],transfer:[0,1,2,3,4,7,8],treat:[0,5],trial:[0,1,2],tupl:[0,1,3,5,6,7],tutori:8,two:[0,1,2,3,4,5,6,7],type:[0,1,2,4,6],typeerror:[0,1],uncorrect:[0,7],uncorrel:[0,1],under:[0,2,4],understand:[0,6],unequ:[0,3],uniform:[0,2,5,6],union:[0,7],uniqu:[0,2,3,6,7],unit:[0,4],univari:[0,3],unq_against_surrog:[0,3],unsuccess:[0,2],until:[0,2],unweight:[0,7],upon:0,upper:[0,2],usabl:0,usag:[0,2],use:[0,2,3,4,6,7],use_al:[0,2],used:[0,1,2,3,4,5,6,7],user:[0,8],uses:[0,2,5],using:[0,1,2,3,5,6,7],util:[0,8],utilis:[0,2],valid:0,valu:[0,1,2,3,4,5,6,7],var1:[0,2],var2:[0,2],vari:[0,2],variabl:[0,1,2,3,4,5,6,7],variou:[0,1],vars_count:[0,7],vector:[0,1,3],verbos:[0,2,4,5,6],version:[0,2],via:[0,1,2,5,6,7],vicent:[0,2,5],viewer:0,virtualis:[0,2],visual:0,visualis:0,visualise_graph:[8,9],vitrualis:[0,2],vstack:[0,6],wai:[0,7],wang:0,want:[0,8],warn:0,wed:0,weight:[0,7],weight_typ:0,well:[0,2,3],were:[0,5,6,7],when:[0,1,2,3,5,6],where:[0,1,2,3,5,6,7],whether:[0,7],which:[0,1,2,3,4],whole:[0,3,4,5,6],wibral:[0,5,6],wiki:[0,3,8],william:[0,6],window:[0,2],wise:[0,1],within:[0,1,4],without:[0,5,6],workaround:[0,2],write:[0,5,6],write_ckp:[0,5,6],written:0,wrt:[0,5,6,7],www:[0,5],xia:0,you:[0,8],your:[0,2],zomaya:[0,2,6]},titles:["idtxl package","The Data Class","Information theoretic estimators","Helper functions","Network comparison","Algorithms for network inference","Algorithms for the analysis of node dynamics","The Results Class","Welcome to IDTxl\u2019s documentation!","idtxl"],titleterms:{"class":[1,7],"function":3,AIS:6,The:[1,7],activ:6,active_information_storag:0,algorithm:[5,6],analysi:6,bivari:[5,6],bivariate_mi:0,bivariate_pid:0,bivariate_t:0,bmi:5,bte:5,comparison:[4,7],content:[0,8],cpu:2,data:[0,1],decomposit:6,document:8,dynam:[6,7],entropi:5,estim:2,estimators_ai:[],estimators_cmi:[],estimators_fast_pid:[],estimators_fast_pid_ext_rep:[],estimators_jidt:0,estimators_mi:[],estimators_multivariate_pid:0,estimators_opencl:0,estimators_pid:0,estimators_t:[],ft2idtxl:[],gpu:2,helper:3,idtxl:[0,8,9],idtxl_except:0,idtxl_import:0,idtxl_io:0,idtxl_util:0,indic:8,infer:[5,7],inform:[2,5,6],jidt:2,matarray2idtxl:[],mmi:5,modul:[0,3],mte:5,multivari:[5,6],multivariate_mi:0,multivariate_pid:0,multivariate_t:0,mutual:5,neighbour_search_cuda:[],neighbour_search_opencl:[],neighbour_search_opencl_old:[],network:[4,5,7],network_analysi:0,network_comparison:0,network_infer:0,node:[6,7],opencl:2,packag:[0,8],partial:6,pid:[2,6],pyinfo:[],result:[0,7],set_estim:[],single_process_analysi:0,single_process_storag:[],stat:[0,3],storag:6,submodul:0,surrog:[],tabl:8,theoret:2,transfer:5,util:3,visualise_graph:0,welcom:8}}) \ No newline at end of file +Search.setIndex({docnames:["idtxl","idtxl_data_class","idtxl_estimators","idtxl_helper","idtxl_network_comparison","idtxl_network_inference","idtxl_process_analysis","idtxl_results_class","index","modules"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["idtxl.rst","idtxl_data_class.rst","idtxl_estimators.rst","idtxl_helper.rst","idtxl_network_comparison.rst","idtxl_network_inference.rst","idtxl_process_analysis.rst","idtxl_results_class.rst","index.rst","modules.rst"],objects:{"":[[0,0,0,"-","idtxl"]],"idtxl.active_information_storage":[[0,1,1,"","ActiveInformationStorage"]],"idtxl.active_information_storage.ActiveInformationStorage":[[0,2,1,"","analyse_network"],[0,2,1,"","analyse_single_process"]],"idtxl.bivariate_mi":[[0,1,1,"","BivariateMI"]],"idtxl.bivariate_mi.BivariateMI":[[0,2,1,"","analyse_network"],[0,2,1,"","analyse_single_target"]],"idtxl.bivariate_pid":[[0,1,1,"","BivariatePID"]],"idtxl.bivariate_pid.BivariatePID":[[0,2,1,"","analyse_network"],[0,2,1,"","analyse_single_target"]],"idtxl.bivariate_te":[[0,1,1,"","BivariateTE"]],"idtxl.bivariate_te.BivariateTE":[[0,2,1,"","analyse_network"],[0,2,1,"","analyse_single_target"]],"idtxl.data":[[0,1,1,"","Data"]],"idtxl.data.Data":[[0,3,1,"","data"],[0,2,1,"","generate_logistic_maps_data"],[0,2,1,"","generate_mute_data"],[0,2,1,"","generate_var_data"],[0,2,1,"","get_realisations"],[0,2,1,"","get_seed"],[0,2,1,"","get_state"],[0,2,1,"","n_realisations"],[0,2,1,"","n_realisations_repl"],[0,2,1,"","n_realisations_samples"],[0,2,1,"","permute_replications"],[0,2,1,"","permute_samples"],[0,2,1,"","set_data"],[0,2,1,"","slice_permute_replications"],[0,2,1,"","slice_permute_samples"]],"idtxl.embedding_optimization_ais_Rudelt":[[0,1,1,"","OptimizationRudelt"]],"idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt":[[0,2,1,"","analyse_auto_MI"],[0,2,1,"","check_inputs"],[0,2,1,"","compute_CIs"],[0,2,1,"","get_R_tot"],[0,2,1,"","get_auto_MI"],[0,2,1,"","get_bootstrap_history_dependence"],[0,2,1,"","get_embeddings"],[0,2,1,"","get_embeddings_that_maximise_R"],[0,2,1,"","get_history_dependence"],[0,2,1,"","get_information_timescale_tau_R"],[0,2,1,"","get_past_range"],[0,2,1,"","get_set_of_scalings"],[0,2,1,"","get_temporal_depth_T_D"],[0,2,1,"","optimize"],[0,2,1,"","optimize_single_run"],[0,2,1,"","remove_subresults_single_process"]],"idtxl.estimators_Rudelt":[[0,1,1,"","RudeltAbstractEstimator"],[0,1,1,"","RudeltAbstractNSBEstimator"],[0,1,1,"","RudeltBBCEstimator"],[0,1,1,"","RudeltNSBEstimatorSymbolsMI"],[0,1,1,"","RudeltPluginEstimatorSymbolsMI"],[0,1,1,"","RudeltShufflingEstimator"]],"idtxl.estimators_Rudelt.RudeltAbstractEstimator":[[0,2,1,"","get_median_number_of_spikes_per_bin"],[0,2,1,"","get_multiplicities"],[0,2,1,"","get_past_range"],[0,2,1,"","get_raw_symbols"],[0,2,1,"","get_symbol_counts"],[0,2,1,"","get_window_delimiters"],[0,2,1,"","is_analytic_null_estimator"],[0,2,1,"","is_parallel"],[0,2,1,"","symbol_array_to_binary"],[0,2,1,"","symbol_binary_to_array"]],"idtxl.estimators_Rudelt.RudeltAbstractNSBEstimator":[[0,2,1,"","H1"],[0,2,1,"","alpha_ML"],[0,2,1,"","d2_log_rho"],[0,2,1,"","d2_log_rho_xi"],[0,2,1,"","d2_xi"],[0,2,1,"","d3_xi"],[0,2,1,"","d_log_rho"],[0,2,1,"","d_log_rho_xi"],[0,2,1,"","d_xi"],[0,2,1,"","get_beta_MAP"],[0,2,1,"","get_integration_bounds"],[0,2,1,"","log_likelihood_DP_alpha"],[0,2,1,"","nsb_entropy"],[0,2,1,"","rho"],[0,2,1,"","unnormalized_posterior"]],"idtxl.estimators_Rudelt.RudeltBBCEstimator":[[0,2,1,"","bayesian_bias_criterion"],[0,2,1,"","estimate"],[0,2,1,"","get_bbc_term"]],"idtxl.estimators_Rudelt.RudeltNSBEstimatorSymbolsMI":[[0,2,1,"","estimate"],[0,2,1,"","nsb_estimator"]],"idtxl.estimators_Rudelt.RudeltPluginEstimatorSymbolsMI":[[0,2,1,"","estimate"],[0,2,1,"","plugin_entropy"],[0,2,1,"","plugin_estimator"]],"idtxl.estimators_Rudelt.RudeltShufflingEstimator":[[0,2,1,"","estimate"],[0,2,1,"","get_H0_X_past_cond_X"],[0,2,1,"","get_H0_X_past_cond_X_eq_x"],[0,2,1,"","get_H_X_past_cond_X"],[0,2,1,"","get_H_X_past_uncond"],[0,2,1,"","get_P_X_past_cond_X"],[0,2,1,"","get_P_X_past_uncond"],[0,2,1,"","get_P_X_uncond"],[0,2,1,"","get_marginal_frequencies_of_spikes_in_bins"],[0,2,1,"","get_shuffled_symbol_counts"],[0,2,1,"","shuffling_MI"]],"idtxl.estimators_jidt":[[0,1,1,"","JidtDiscrete"],[0,1,1,"","JidtDiscreteAIS"],[0,1,1,"","JidtDiscreteCMI"],[0,1,1,"","JidtDiscreteMI"],[0,1,1,"","JidtDiscreteTE"],[0,1,1,"","JidtEstimator"],[0,1,1,"","JidtGaussian"],[0,1,1,"","JidtGaussianAIS"],[0,1,1,"","JidtGaussianCMI"],[0,1,1,"","JidtGaussianMI"],[0,1,1,"","JidtGaussianTE"],[0,1,1,"","JidtKraskov"],[0,1,1,"","JidtKraskovAIS"],[0,1,1,"","JidtKraskovCMI"],[0,1,1,"","JidtKraskovMI"],[0,1,1,"","JidtKraskovTE"],[0,4,1,"","common_estimate_surrogates_analytic"]],"idtxl.estimators_jidt.JidtDiscrete":[[0,2,1,"","estimate_surrogates_analytic"],[0,2,1,"","get_analytic_distribution"],[0,2,1,"","is_analytic_null_estimator"]],"idtxl.estimators_jidt.JidtDiscreteAIS":[[0,2,1,"","estimate"],[0,2,1,"","get_analytic_distribution"]],"idtxl.estimators_jidt.JidtDiscreteCMI":[[0,2,1,"","estimate"],[0,2,1,"","get_analytic_distribution"]],"idtxl.estimators_jidt.JidtDiscreteMI":[[0,2,1,"","estimate"],[0,2,1,"","get_analytic_distribution"]],"idtxl.estimators_jidt.JidtDiscreteTE":[[0,2,1,"","estimate"],[0,2,1,"","get_analytic_distribution"]],"idtxl.estimators_jidt.JidtEstimator":[[0,2,1,"","is_parallel"]],"idtxl.estimators_jidt.JidtGaussian":[[0,2,1,"","estimate_surrogates_analytic"],[0,2,1,"","get_analytic_distribution"],[0,2,1,"","is_analytic_null_estimator"]],"idtxl.estimators_jidt.JidtGaussianAIS":[[0,2,1,"","estimate"]],"idtxl.estimators_jidt.JidtGaussianCMI":[[0,2,1,"","estimate"],[0,2,1,"","get_analytic_distribution"]],"idtxl.estimators_jidt.JidtGaussianMI":[[0,2,1,"","estimate"]],"idtxl.estimators_jidt.JidtGaussianTE":[[0,2,1,"","estimate"]],"idtxl.estimators_jidt.JidtKraskov":[[0,2,1,"","is_analytic_null_estimator"]],"idtxl.estimators_jidt.JidtKraskovAIS":[[0,2,1,"","estimate"]],"idtxl.estimators_jidt.JidtKraskovCMI":[[0,2,1,"","estimate"]],"idtxl.estimators_jidt.JidtKraskovMI":[[0,2,1,"","estimate"]],"idtxl.estimators_jidt.JidtKraskovTE":[[0,2,1,"","estimate"]],"idtxl.estimators_multivariate_pid":[[0,1,1,"","SxPID"]],"idtxl.estimators_multivariate_pid.SxPID":[[0,2,1,"","estimate"],[0,2,1,"","is_analytic_null_estimator"],[0,2,1,"","is_parallel"]],"idtxl.estimators_opencl":[[0,1,1,"","OpenCLKraskov"],[0,1,1,"","OpenCLKraskovCMI"],[0,1,1,"","OpenCLKraskovMI"]],"idtxl.estimators_opencl.OpenCLKraskov":[[0,2,1,"","is_analytic_null_estimator"],[0,2,1,"","is_parallel"]],"idtxl.estimators_opencl.OpenCLKraskovCMI":[[0,2,1,"","estimate"]],"idtxl.estimators_opencl.OpenCLKraskovMI":[[0,2,1,"","estimate"]],"idtxl.estimators_pid":[[0,1,1,"","SydneyPID"],[0,1,1,"","TartuPID"]],"idtxl.estimators_pid.SydneyPID":[[0,2,1,"","estimate"],[0,2,1,"","is_analytic_null_estimator"],[0,2,1,"","is_parallel"]],"idtxl.estimators_pid.TartuPID":[[0,2,1,"","estimate"],[0,2,1,"","is_analytic_null_estimator"],[0,2,1,"","is_parallel"]],"idtxl.idtxl_exceptions":[[0,5,1,"","AlgorithmExhaustedError"],[0,5,1,"","BROJA_2PID_Exception"],[0,5,1,"","JidtOutOfMemoryError"],[0,4,1,"","package_missing"]],"idtxl.idtxl_io":[[0,4,1,"","export_brain_net_viewer"],[0,4,1,"","export_networkx_graph"],[0,4,1,"","export_networkx_source_graph"],[0,4,1,"","import_fieldtrip"],[0,4,1,"","import_matarray"],[0,4,1,"","load_json"],[0,4,1,"","load_pickle"],[0,4,1,"","save_json"],[0,4,1,"","save_pickle"]],"idtxl.idtxl_utils":[[0,4,1,"","argsort_descending"],[0,4,1,"","autocorrelation"],[0,4,1,"","calculate_mi"],[0,4,1,"","combine_discrete_dimensions"],[0,4,1,"","conflicting_entries"],[0,4,1,"","discretise"],[0,4,1,"","discretise_max_ent"],[0,4,1,"","equal_dicts"],[0,4,1,"","print_dict"],[0,4,1,"","remove_column"],[0,4,1,"","remove_row"],[0,4,1,"","separate_arrays"],[0,4,1,"","sort_descending"],[0,4,1,"","standardise"],[0,4,1,"","swap_chars"]],"idtxl.multivariate_mi":[[0,1,1,"","MultivariateMI"]],"idtxl.multivariate_mi.MultivariateMI":[[0,2,1,"","analyse_network"],[0,2,1,"","analyse_single_target"]],"idtxl.multivariate_pid":[[0,1,1,"","MultivariatePID"]],"idtxl.multivariate_pid.MultivariatePID":[[0,2,1,"","analyse_network"],[0,2,1,"","analyse_single_target"]],"idtxl.multivariate_te":[[0,1,1,"","MultivariateTE"]],"idtxl.multivariate_te.MultivariateTE":[[0,2,1,"","analyse_network"],[0,2,1,"","analyse_single_target"],[0,2,1,"","getit"]],"idtxl.network_analysis":[[0,1,1,"","NetworkAnalysis"]],"idtxl.network_analysis.NetworkAnalysis":[[0,3,1,"","current_value"],[0,2,1,"","resume_checkpoint"],[0,3,1,"","selected_vars_full"],[0,3,1,"","selected_vars_sources"],[0,3,1,"","selected_vars_target"]],"idtxl.network_comparison":[[0,1,1,"","NetworkComparison"]],"idtxl.network_comparison.NetworkComparison":[[0,2,1,"","calculate_link_te"],[0,2,1,"","compare_between"],[0,2,1,"","compare_links_within"],[0,2,1,"","compare_within"]],"idtxl.network_inference":[[0,1,1,"","NetworkInference"],[0,1,1,"","NetworkInferenceBivariate"],[0,1,1,"","NetworkInferenceMI"],[0,1,1,"","NetworkInferenceMultivariate"],[0,1,1,"","NetworkInferenceTE"]],"idtxl.results":[[0,1,1,"","AdjacencyMatrix"],[0,1,1,"","DotDict"],[0,1,1,"","Results"],[0,1,1,"","ResultsMultivariatePID"],[0,1,1,"","ResultsNetworkAnalysis"],[0,1,1,"","ResultsNetworkComparison"],[0,1,1,"","ResultsNetworkInference"],[0,1,1,"","ResultsPID"],[0,1,1,"","ResultsSingleProcessAnalysis"],[0,1,1,"","ResultsSingleProcessRudelt"]],"idtxl.results.AdjacencyMatrix":[[0,2,1,"","add_edge"],[0,2,1,"","add_edge_list"],[0,2,1,"","get_edge_list"],[0,2,1,"","n_edges"],[0,2,1,"","n_nodes"],[0,2,1,"","print_matrix"]],"idtxl.results.Results":[[0,2,1,"","combine_results"]],"idtxl.results.ResultsMultivariatePID":[[0,2,1,"","get_single_target"]],"idtxl.results.ResultsNetworkAnalysis":[[0,2,1,"","get_single_target"],[0,2,1,"","get_target_sources"],[0,3,1,"","targets_analysed"]],"idtxl.results.ResultsNetworkComparison":[[0,2,1,"","get_adjacency_matrix"],[0,2,1,"","get_single_target"],[0,2,1,"","get_target_sources"],[0,2,1,"","print_edge_list"]],"idtxl.results.ResultsNetworkInference":[[0,2,1,"","get_adjacency_matrix"],[0,2,1,"","get_target_delays"],[0,2,1,"","print_edge_list"]],"idtxl.results.ResultsPID":[[0,2,1,"","get_single_target"]],"idtxl.results.ResultsSingleProcessAnalysis":[[0,2,1,"","get_significant_processes"],[0,2,1,"","get_single_process"],[0,3,1,"","processes_analysed"]],"idtxl.results.ResultsSingleProcessRudelt":[[0,2,1,"","get_single_process"],[0,3,1,"","processes_analysed"]],"idtxl.single_process_analysis":[[0,1,1,"","SingleProcessAnalysis"]],"idtxl.stats":[[0,4,1,"","ais_fdr"],[0,4,1,"","check_n_perm"],[0,4,1,"","max_statistic"],[0,4,1,"","max_statistic_sequential"],[0,4,1,"","max_statistic_sequential_bivariate"],[0,4,1,"","mi_against_surrogates"],[0,4,1,"","min_statistic"],[0,4,1,"","network_fdr"],[0,4,1,"","omnibus_test"],[0,4,1,"","syn_shd_against_surrogates"],[0,4,1,"","unq_against_surrogates"]],"idtxl.visualise_graph":[[0,4,1,"","plot_mute_graph"],[0,4,1,"","plot_network"],[0,4,1,"","plot_network_comparison"],[0,4,1,"","plot_selected_vars"]],idtxl:[[0,0,0,"-","active_information_storage"],[0,0,0,"-","bivariate_mi"],[0,0,0,"-","bivariate_pid"],[0,0,0,"-","bivariate_te"],[0,0,0,"-","data"],[0,0,0,"-","embedding_optimization_ais_Rudelt"],[0,0,0,"-","estimators_Rudelt"],[0,0,0,"-","estimators_jidt"],[0,0,0,"-","estimators_multivariate_pid"],[0,0,0,"-","estimators_opencl"],[0,0,0,"-","estimators_pid"],[0,0,0,"-","idtxl_exceptions"],[0,0,0,"-","idtxl_io"],[0,0,0,"-","idtxl_utils"],[0,0,0,"-","multivariate_mi"],[0,0,0,"-","multivariate_pid"],[0,0,0,"-","multivariate_te"],[0,0,0,"-","network_analysis"],[0,0,0,"-","network_comparison"],[0,0,0,"-","network_inference"],[0,0,0,"-","results"],[0,0,0,"-","single_process_analysis"],[0,0,0,"-","stats"],[0,0,0,"-","visualise_graph"]]},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","property","Python property"],"4":["py","function","Python function"],"5":["py","exception","Python exception"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:property","4":"py:function","5":"py:exception"},terms:{"0":[0,1,2,3,4,5,6,7],"00001":[0,6],"005":[0,6],"00561":[0,6],"00629":[0,6],"0068910":0,"00706":[0,6],"00792":[0,6],"00889":[0,6],"00998":[0,6],"01":[0,6],"010":[0,5],"0109462":[0,1],"01119":[0,6],"01256":[0,6],"01409":[0,6],"01581":[0,6],"016":[0,6],"01774":[0,6],"01991":[0,6],"02233":[0,6],"025":[0,6],"02506":[0,6],"0262":[0,5],"02812":[0,6],"03155":[0,6],"03356":[0,6],"0354":[0,6],"03972":[0,6],"04":[0,6],"04456":[0,6],"05":[0,3,4,5,6],"051112":[0,5,6],"0561":[0,6],"06295":[0,6],"066138":[0,2],"07063":[0,6],"07924":[0,6],"08891":[0,6],"09976":[0,6],"0s":[0,6],"1":[0,1,2,3,5,6,7],"10":[0,1,2,5,6],"100":[0,5,6],"1000":[0,1,6],"10000":[0,1],"1004":[0,6],"1007":[0,1,5],"1016":[0,6],"1024":[0,2],"11":[0,2],"1103":[0,5,6],"11194":[0,6],"11936":[0,6],"12559":[0,6],"1371":[0,1],"14":[0,1,6],"14092":[0,6],"15":[0,3,5,6],"15479":[0,6],"15811":[0,6],"16":[0,2,6],"17":[0,6],"17741":[0,6],"19":[0,2],"19905":[0,6],"1995":[0,7],"1d":[0,2,6],"1e":[0,2],"1s":[0,6],"1st":[0,1],"1th":[0,1],"2":[0,1,2,3,5,6,7],"20":[0,2,6],"200":[0,2,3,5,6],"2000":[0,2,5],"2001":[0,1],"2002":[0,3,6],"2004":[0,2],"2010":[0,6],"2011":[0,5,6],"2012":[0,2,5,6],"2013":0,"2014":[0,1,2,6],"2017":[0,2],"2018":[0,2],"2020":[0,6],"2021":[0,6],"208":[0,2,6],"2161":[0,2,6],"2183":[0,2,6],"22334":[0,6],"23342":[0,6],"25":[0,3,6],"250":[0,6],"25059":[0,6],"2515":[0,6],"25594":[0,6],"27":[0,6],"271":[0,2],"28117":[0,6],"2d":[0,2,3],"2pid":[0,2],"3":[0,1,2,5,6,7],"30":[0,5],"3000":[0,1],"31548":[0,6],"3389":[0,6],"3390":[0,2,6],"35397":[0,6],"39":[0,2,6],"39716":[0,6],"4":[0,1,2,3,5,6,7],"40919":[0,6],"44563":[0,6],"45":[0,5],"45625":[0,6],"461":[0,2,5],"463":[0,1],"464":[0,5],"474":[0,1],"5":[0,1,5,6,7],"500":[0,3,4,5,6],"5000":[0,1],"50594":[0,6],"530":[0,2],"53973":[0,6],"54":[0,2,6],"56101":[0,6],"58114":[0,6],"6":[0,1,2,3,6],"60":[0,6],"62946":[0,6],"63":[0,6],"67":[0,5],"69":[0,2],"7":[0,1,6,7],"70627":[0,6],"77407":[0,6],"79245":[0,6],"8":[0,1,2,6],"81171":[0,6],"83":[0,5,6],"84":[0,1],"85":[0,2,5],"870":[0,3],"878":[0,3],"88914":[0,6],"9":[0,1],"97":[0,6],"97164":[0,6],"99054":[0,6],"99763":[0,6],"\u03ba":[0,6,7],"\u03c41":[0,6,7],"abstract":[0,2,6],"boolean":[0,2],"break":[0,2],"case":[0,6],"class":[0,2,4,5,6,8],"default":[0,1,2,3,4,5,6,7],"do":0,"export":0,"final":[0,2,5,6],"float":[0,1,2,3,4,5,6,7],"function":[0,1,2,5,6,8],"g\u00f6ttingen":[0,6],"import":[0,6],"int":[0,1,2,3,4,5,6,7],"long":[0,6],"new":[0,1,6],"null":[0,2],"return":[0,1,2,3,4,5,6,7],"true":[0,1,2,3,4,5,6,7],"v\u00f6gler":[0,6],"var":[0,1,2],"while":[0,1,2,6],A:[0,1,2,3,4,5,6,7],For:[0,1,2,3,5,6],If:[0,1,2,3,4,6,8],In:[0,6],It:0,ONE:[0,1],One:[0,6],The:[0,2,3,4,5,6,8],There:[0,7],These:[0,6],To:[0,2,3,5,6,7],_create_surrogate_t:[0,3],_process0:[0,6],_single_process:[],_single_target:[0,7],ab:[0,6,7],about:[0,4,6,7],abov:[0,2,6],absenc:[0,6],absolut:[0,7],abzing:[0,2],accept:[0,1],access:[0,7],accord:[0,1,3],across:[0,3,6],actic:[0,2],activ:[0,2,3,7,8],active_information_storag:[6,8,9],activeinformationstorag:[0,6],actual:[0,1,2,3],ad:[0,2,5,6,7],adapt:[0,3],add:[0,2,5,6],add_condit:[0,5,6],add_edg:0,add_edge_list:0,addit:[0,1,6],addition:[0,6,7],adjac:[0,7],adjacency_matrix:0,adjacencymatrix:[0,7],advanc:[0,6],after:[0,3],again:[0,2,5],against:[0,3],ai:[0,2,3,7,8],ais_fdr:[0,3,6],ais_pval:[0,7],ais_sign:[0,7],ais_tot:[0,6,7],aka:[0,6],albert:[0,2],alg_num:[0,2],algorithm:[0,2,7,8],algorithm_num:[0,2],algorithmexhaustederror:[0,3],alia:[],all:[0,1,2,3,4,5,6,7],allow:[0,1,2,3],along:[0,3],alph1:[0,2],alph2:[0,2],alph:[0,2,6],alph_s1:[0,2,6],alph_s2:[0,2,6],alph_t:[0,2,6],alpha:[0,3,4,5,6,7],alpha_:[0,5,6],alpha_comp:[0,4],alpha_fdr:[0,3],alpha_max_seq:[0,3],alpha_max_stat:[0,3],alpha_mi:[0,3,7],alpha_min_stat:[0,3],alpha_ml:[0,6],alpha_omnibu:[0,3],alphabet:[0,2],alphabet_s:[0,6],alphabet_size_past:[0,6],alphc:[0,2],alreadi:[0,2,5],also:0,alwai:[0,2],among:[0,6],an:[0,1,2,3,4,6,7],analys:[0,1,7],analyse_auto_mi:[0,6,7],analyse_network:[0,5,6],analyse_single_process:[0,6],analyse_single_target:[0,5,6],analysi:[0,1,2,3,4,5,7,8],analysis_setup:[0,3],analyt:[0,2,6],analyticnulldistribut:[0,2],analyz:[0,6],ani:[0,1],anoth:[0,2],appli:[0,2,3,6],approach:0,ar:[0,1,2,3,4,5,6,7],arang:[0,1],arg:[0,1,2,3,4,5,6,7],argsort_descend:[0,3],argument:[0,2],around:[0,6],arrai:[0,1,2,3,4,5,6,7],array_nam:0,arxiv:[0,6],assign:[0,4],assum:[0,2],assumpt:[0,3,6],astyp:[0,6],attain:[0,6],attemp:[0,2],attempt:[0,2],attribut:[0,1,3,5,6,7],auto:[0,6],auto_mi:[0,6,7],auto_mi_bin_s:[0,6,7],auto_mi_bin_size_set:[0,6],auto_mi_delai:[0,6,7],auto_mi_max_delai:[0,6,7],autocorrel:[0,3,6,7],autodetect:0,automat:[0,6],autoregress:[0,1],avail:[0,2,6,7],averag:[0,2,6],avg:[0,7],ax:[0,1],axi:[0,3],ay:[0,2,6],b:[0,4,7],baccala:[0,1],back:[0,1,6],base:[0,2,3,4,5,6],basi:0,basic:[0,3],bayesian:[0,6],bayesian_bias_criterion:[0,6],bbc:[0,6],bbc_term:[0,6],bbc_toler:[0,6],becaus:[0,1,2,3,6],becker:[0,6],been:[0,2,4,6,7],beer:[0,6],befor:[0,2,7],being:8,below:[0,6],benjamini:[0,7],bertsching:[0,2,6],beta:[0,6],beta_map:[0,6],between:[0,2,3,4,5,6],bia:[0,6],bialek:[0,6],bias:[0,6],big:[0,3],bigger:[0,3],bin:[0,2,3,6,7],bin_siz:[0,6],binari:[0,6,7],biol:[0,1],biologi:[0,6],bit:[0,2],bivar:0,bivari:[0,2,3,7,8],bivariate_mi:[5,8,9],bivariate_pid:[6,8,9],bivariate_t:[5,8,9],bivariatemi:[0,5],bivariatepid:[0,6],bivariatet:[0,5],block:[0,1,6],block_siz:[0,1],bmi:8,bnv:0,bool:[0,1,2,3,4,5,6,7],bootstrap:[0,6],bootstrap_ci_percentile_hi:[0,6],bootstrap_ci_percentile_lo:[0,6],bootstrap_ci_use_sd:[0,6],both:[0,2,3,4,6,7],bound:[0,2,6],boundari:[0,2],brain:0,brainnet:0,broja:[0,2],broja_2pid:[0,2],broja_2pid_except:0,bte:8,c:[0,3],calcclass:[0,2],calcul:[0,1,2,3,4,5,6],calculate_link_t:[0,4],calculate_mi:[0,3],call:[0,2,3,5,6,7],cambridg:[0,6],can:[0,1,2,3,4,5,6,7],candid:[0,3,5,6],candidate_set:[0,3],cannot:[0,2,3],caus:0,causal:[0,5,6],cf:[0,6],chang:[0,2],channel:0,charact:[0,1,3],characterist:[0,6,7],check:[0,2,3,4,6],check_input:[0,6],check_n_perm:[0,3],checkpoint:[0,5,6],child:[0,2,6],choos:[0,3],chosen:[0,1,6],chunk:[0,2,6],ci:[0,6],circular:[0,1],ckp:0,close:[0,6],cmi:[0,2,4,5,6],cmi_diff_ab:[0,7],cmi_estim:[0,4,5,6,7],code:[0,2],coeffici:[0,1,3],coefficient_matric:[0,1],coher:[0,1],collect:[0,4],color:0,column:[0,3],com:[0,2,6],combin:[0,1,3,6],combine_discrete_dimens:[0,3],combine_result:0,come:0,common:[0,2],common_estimate_surrogates_analyt:[0,2],commonli:0,comp:[0,5],compar:[0,1,3,4,7],compare_between:[0,4],compare_links_within:[0,4],compare_within:[0,4],comparison:[0,3,8],complet:[0,3,6],complex:[0,2,6],comprehens:0,comput:[0,2,5,6],compute_ci:[0,6],computecombinedvalu:[0,3],concaten:[0,2],concentr:[0,6],concept:[0,1],condit:[0,2,3,4,5,6,7],conditionalmutualinfocalculatormultivariategaussian:[0,2],cone:[0,2],cone_solv:[0,2],confid:[0,2,6],conflict:0,conflicting_entri:[0,3],connect:[0,4,5,7],connectom:0,consequ:[0,6],consid:[0,3,5],consider:[0,6],consist:[0,1,5],consol:[0,2,3,4,5,6,7],constant:[0,3],construct:[0,5],contain:[0,2,3,5,6,7],content:9,context:[0,2],continu:[0,2,3],contribut:[0,6],control:[0,2,4],conveni:[0,7],converg:[0,2],convert:[0,6],coordin:0,copi:[0,3],corr:[0,3],correct:[0,3,5,6,7],correct_by_target:[0,3],correl:[0,3],correspond:[0,1,2,7],could:0,count:[0,1,2,6],coupl:[0,1],cpu:[0,8],crash:[0,5,6],creat:[0,1,3,4,6],creation:[0,1,3,4,5,6],criterion:[0,6,7],critic:[0,3,4,5,6],current:[0,1,2,3,5,6,7],current_symbol_arrai:[0,6],current_valu:[0,1,5,6,7],cybern:[0,1],d2_log_rho:[0,6],d2_log_rho_xi:[0,6],d2_xi:[0,6],d3_xi:[0,6],d:[0,1,2,3,6,7],d_log_rho:[0,6],d_log_rho_xi:[0,6],d_xi:[0,6],data:[2,3,4,5,7,8,9],data_1:[0,1],data_2:[0,1],data_a:[0,4],data_b:[0,4],data_mut:[0,1],data_new:[0,1],data_properti:[0,7],data_set_a:[0,4],data_set_b:[0,4],data_spiketim:[0,6],de:[0,5],debug:[0,2,6],decomposit:[0,2,7,8],decreas:[0,2],decrement:[0,2],defin:[0,2,3],degre:[0,2,3],delai:[0,2,6,7],delet:[0,6],delimit:[0,6],delta:[0,6],denomin:[0,3],depend:[0,1,4,7,8],dependent_var:[0,6],depth:[0,5,6,7],deriv:[0,3,6],descend:[0,3],describ:[0,2,5,6,7],descric:[0,2],descript:[0,5,6],detail:[0,2,3,4,5,6,7],detect:[0,3,4,5,6],determin:[0,1,6,7],deviat:[0,1,3,6],devic:[0,2],df:[0,3],dict:[0,1,2,3,4,5,6,7],dict_1:[0,3],dict_2:[0,3],dictionari:[0,2,3,6,7],dietterich:[0,6],diff_ab:[0,7],differ:[0,1,2,3,4,6,7],differenti:[0,2,6],digraph:0,dim_ord:[0,1],dimens:[0,1,2,3],dimension:[0,1,3],direct:[0,1,2],dirichlet:[0,6],discard:[0,6],discoveri:[0,3],discret:[0,1,2,3],discretis:[0,2,3],discretise_max_:[0,3],discretise_method:[0,2],discretisemaxentropi:[0,3],discuss:8,disk:[0,5,6],displai:0,display_edge_label:0,distanc:[0,2],distribut:[0,2,3,6,7],divid:[0,3],docstr:[0,5,6,7],document:[0,2,3,4,5,6,7],doe:[0,2,3],doi:[0,1,2,5,6],don:0,done:[0,3,6],dot:[0,7],dotdict:[0,6],down:[0,3],drawn:[0,6],due:[0,2,6],duplic:0,dure:[0,6],dynam:[0,1,2,8],e109462:[0,1],e16042161:[0,2,6],e68910:0,e:[0,1,2,3,4,5,6,7],each:[0,1,2,3,4,5,6,7],easi:[0,6],eco:[0,2],edg:[0,7],editor:[0,6],effect:[0,4,5,6,7],effici:[0,6],either:[0,2,3,5,6,7],els:[0,6],emb:[0,6],embed:[0,1,2,4,5,7,8],embedding_number_of_bins_set:[0,6],embedding_optimization_ais_rudelt:[6,8,9],embedding_past_range_set:[0,6],embedding_scaling_exponent_set:[0,6],embedding_step_s:[0,6],empir:[0,2],empti:[0,1],enabl:[0,5,6],engin:0,enough:[0,3],enter:[0,7],entri:[0,1,3,4,6,7],entropi:[0,1,2,3,6,7,8],ep:[0,6],eq:[0,1],equal:[0,2,3],equal_dict:[0,3],equiv:[0,6],equival:[0,6,7],err:0,error:[0,2],essenti:[0,6],establish:[0,1],estim:[0,1,3,4,5,7,8],estimate_parallel:[0,2],estimate_surrogates_analyt:[0,2,6],estimation_method:[0,6,7],estimators_:[0,4,5,6],estimators_jidt:[2,8,9],estimators_multivariate_pid:[8,9],estimators_opencl:[2,8,9],estimators_pid:[2,6,8,9],estimators_rudelt:[6,8,9],evenli:[0,3],event:[0,6],everi:[0,2,5,6],ex:[0,2,3],exact:[0,2],exampl:[0,1,3,4,5,6],except:0,exclud:[0,5],exist:[0,1],expect:[0,1,6],experiment:[0,4],explan:0,expon:[0,6,7],exponenti:[0,2],export_brain_net_view:0,export_networkx_graph:0,export_networkx_source_graph:0,extens:[0,5,6],extract:[0,6],f:[0,1,6],face:[0,4],factor:[0,6],fae:[0,1,5,6],fall:[0,1],fals:[0,1,2,3,5,6],fast:[0,2],faster:[0,3],fdr:[0,3,5,7],fdr_constant:[0,3],fdr_correct:[0,5,6],femal:[0,4],fewer:[0,7],field:[0,3],fieldtrip:0,fieldtriptoolbox:0,fifth:0,figur:0,file:[0,5,6],file_nam:0,file_path:0,file_vers:0,filename_ckp:[0,5,6],find:[0,2,5,6],fire:[0,6,7],firing_r:[0,6,7],first:[0,1,2,4,6,7],first_bin_s:[0,6],fit:[0,1],five:[0,1],fix:[0,1],fninf:[0,6],follow:[0,1,6],forc:[0,5,6],form:[0,1],format:[0,1,2,6],forth:[0,3],found:[0,5,6],four:[0,4,5],fourth:0,free:[0,5],freedom:[0,3],frequenc:[0,6],from:[0,1,2,3,4,5,6,7],front:[0,2,6],fsampl:0,ft_datatype_raw:0,ft_struct_nam:0,full:[0,3,5],further:[0,4,5,6],futur:[0,2],g:[0,1,2,5,6,7],galusk:[0,6],gaussian:[0,1,2],gc:0,gener:[0,1,3,7],generate_logistic_maps_data:[0,1],generate_mute_data:[0,1,5,6],generate_var_data:[0,1],genoves:[0,3],get:[0,1,6,7],get_adjacency_matrix:[0,7],get_analytic_distribut:[0,2],get_as_list:[0,6],get_auto_mi:[0,6],get_bbc_term:[0,6],get_beta_map:[0,6],get_bootstrap_history_depend:[0,6],get_edge_list:0,get_embed:[0,6],get_embeddings_that_maximise_r:[0,6],get_h0_x_past_cond_x:[0,6],get_h0_x_past_cond_x_eq_x:[0,6],get_h_x_past_cond_x:[0,6],get_h_x_past_uncond:[0,6],get_history_depend:[0,6],get_information_timescale_tau_r:[0,6],get_integration_bound:[0,6],get_marginal_frequencies_of_spikes_in_bin:[0,6],get_max_r_t:[0,6],get_median_number_of_spikes_per_bin:[0,6],get_multipl:[0,6],get_p_x_past_cond_x:[0,6],get_p_x_past_uncond:[0,6],get_p_x_uncond:[0,6],get_past_rang:[0,6],get_r_thresh:[0,6],get_r_tot:0,get_raw_symbol:[0,6],get_realis:[0,1],get_realisations_symbol:[0,6],get_se:[0,1],get_set_of_sc:[0,6],get_shannon_entropi:[0,6],get_shuffled_symbol_count:[0,6],get_significant_process:[0,7],get_single_process:[0,7],get_single_target:[0,7],get_stat:[0,1],get_symbol_count:[0,6],get_target_delai:[0,7],get_target_sourc:[0,7],get_temporal_depth_t_d:[0,6],get_window_delimit:[0,6],getit:0,ghahramani:[0,6],github:[0,2,3,6,8],give:[0,2],given:[0,1,2,3,6,7],glass:0,good:0,googl:8,gpu:[0,8],gpuid:[0,2],granger:[0,5,6],graph:[0,6],grassberg:[0,2],greedi:0,group:[0,6,8],guess:[0,6],gutknecht:[0,6],h0_sh_x_past_cond_x:[0,6],h0_x_past_cond_x:[0,6],h1:[0,6],h:[0,2,6],h_0:[0,6],h_spike:[0,6,7],h_uncond:[0,6],h_x_past_cond_x:[0,6],h_x_past_uncond:[0,6],ha:[0,1,2,3,4,5,6,7],halv:[0,2],handl:0,hard:[0,2],have:[0,1,2,3,4,5,6,7,8],hde:[0,6],hdestim:[0,6],hdf5:0,he:0,head:8,hehlotler:[0,3],hellother:[0,3],helper:8,henc:[0,2,5],here:[0,2,6],heurist:[0,6],high:[0,2,7],higher:0,highest:[0,3,7],highest_protocol:0,histori:[0,2,7,8],history_depend:[0,6,7],history_sourc:[0,2],history_target:[0,2],hit:[0,2],hold:0,home:0,hopefulli:0,host:8,hous:[0,4],how:[0,2,6],howev:[0,2],http:[0,1,2,3,5,6],human:0,hypothesi:[0,2],i:[0,2,3,4,5,6,7],i_1:[0,3],i_2:[0,3],i_corr:[0,6],i_list:0,i_plugin:[0,6],id:[0,2,7],identifi:[0,3,7],idtxl:[1,2,3,4,5,6,7],idtxl_checkpoint:[0,5,6],idtxl_except:[8,9],idtxl_import:[],idtxl_io:[8,9],idtxl_util:[3,8,9],idx:[0,1,5,6],idx_al:[0,3],idx_list:[0,1],idx_realis:[0,1],idx_singl:[0,3],ie:[0,6],ignor:[0,2,6],imag:[0,6],implement:[0,1,2,4,6],implicitli:[0,1],import_fieldtrip:0,import_matarrai:0,improv:[0,2],includ:[0,3,6,7],incom:[0,2],inconveni:0,increment:[0,2],ind:[0,1],indent:[0,3],independ:[0,2,4,6],index:[0,1,3,4,5,6,7,8],indic:[0,1,2,3,5,6,7],individu:[0,2,3,5,6,7],infer:[0,3,4,6,8],influenc:[0,5,6],infodynam:[0,3],infor:[0,2],inform:[0,1,3,4,7,8],initi:[0,1,2],initial_st:[0,1],initialis:[0,1],inner:[0,2,5],input:[0,2,3,6],ins:[0,6],insid:0,inspect:[0,6],instanc:[0,1,2,3,4,5,6,7],instanti:[0,2],instead:[0,1,2,3,5,6],institut:[0,5],int32:[0,2],intact:[0,1],integ:[0,1,6],integr:[0,6],interact:[0,7],intermedi:[0,2],intern:0,interv:[0,6],io:[0,3],is_analytic_null_estim:[0,2,6],is_parallel:[0,2,6],issu:8,iter:[0,5,6],its:[0,2,6,7],j:[0,2,3,5,6],j_list:0,java:[0,2],jidt:[0,3,8],jidtdiscret:[0,2],jidtdiscreteai:[0,2],jidtdiscretecmi:[0,2],jidtdiscretemi:[0,2],jidtdiscretet:[0,2],jidtestim:[0,2],jidtgaussian:[0,2],jidtgaussianai:[0,2],jidtgaussiancmi:[0,2],jidtgaussianmi:[0,2],jidtgaussiant:[0,2],jidtkraskov:[0,2],jidtkraskovai:[0,2],jidtkraskovcmi:[0,2,5,6],jidtkraskovmi:[0,2],jidtkraskovt:[0,2],jidtoutofmemoryerror:[0,2],joint:[0,2,3,4,5],joseph:[0,2],jost:[0,2,6],journal:[0,1],jpackag:[0,2],jpype:[0,2],json:0,k1:[0,6],k:[0,1,6],kappa:[0,6],keep:[0,1,2],kei:[0,3,6,7],keyword:[0,7],knn:[0,2],kraskov:[0,2],kraskov_k:[0,2],ksg:[0,2],kwarg:0,l:[0,1,5,6],label:0,labl:0,lag:[0,1,2,5,6,7],lag_mi:[0,2],lags_pid:[0,6],larger:[0,2],last:[0,3,6],later:0,latter:[0,2],lattic:[0,7],lazar:[0,3],le:0,len:[0,3],lenght:[0,6],length:[0,1,2,3,6,7],lett:[0,2,5],level:[0,2,3,4,5,6],like:[0,6,7],likelihood:[0,6],limit:[0,2],lindner:[0,5,6],line:[0,4],linear:[0,1],linearli:[0,6],link:[0,3,4,5,7],link_a:[0,4],link_b:[0,4],list:[0,1,3,4,5,6,7],lizier:[0,2,3,5,6],load:[0,6],load_json:0,load_pickl:0,local:[0,1,2,6],local_valu:[0,2],locat:[0,6],log:[0,6],log_likelihood_dp_alpha:[0,6],logarithm:[0,6],logic:[0,3],logical_xor:[0,6],logist:[0,1],longer:0,look:[0,7,8],loop:[0,2],loos:[0,1],lower:[0,6],lowest:[0,3],m:[0,5,6],ma:[0,6],machin:[0,2],made:[0,3],mai:[0,2,7],main:[0,6],make:[0,2,3,6],makkeh:[0,2,6],male:[0,4],mani:[0,2],manual:0,map:[0,1,3,6],margin:[0,6],marginal_prob:[0,6],marinazzo:[0,1],marx:[0,6],mass:[0,2],mat:0,match:[0,4],matlab:[0,1],matplotlib:0,matric:[0,1],matrix:[0,1,7],matrixutil:[0,3],max:[0,1,3,5],max_ent:[0,2],max_it:[0,2,6],max_lag:[0,5,6],max_lag_sourc:[0,5],max_lag_target:[0,5],max_p:[0,7],max_p_lag:[0,7],max_seq:[0,5],max_shift:[0,1],max_stat:[0,5,6],max_statist:[0,3],max_statistic_sequenti:[0,3],max_statistic_sequential_bivari:[0,3],max_t:[0,7],max_te_lag:[0,7],max_unsuc_swaps_row_parm:[0,2,6],maxim:[0,6],maximis:[0,5,6],maximum:[0,1,2,3,5,6,7],measur:[0,2,5,6,7],median:[0,6],mem:[0,2],memori:0,messag:0,method:[0,1,2,3,4,5,6,7],mi:[0,2,3,5,6,7],mi_against_surrog:[0,3],mi_omnibu:[0,5],mi_sign_sourc:[0,5],michael:[0,6],mikhail:[0,2],min:[0,3],min_first_bin_s:[0,6],min_lag:[0,5],min_lag_sourc:[0,5],min_stat:[0,5,6],min_statist:[0,3],min_step_for_sc:[0,6],minimum:[0,3,5,6],minu:[0,6],misinform:0,miss:0,mit:[0,6],mk:[0,6],mmi:8,mni:0,mni_coord:0,model:[0,1,5,6],modul:[2,4,5,6,8,9],moment:[0,6],montalto:[0,1],more:[0,2,5,6,8],most:[0,6],mpg:[0,5],mte:8,multi:[0,3],multinomi:[0,6],multipl:[0,1,2,4,6,7],multipli:[0,3],multivar:0,multivari:[0,1,2,3,4,7,8],multivariate_mi:[5,8,9],multivariate_pid:[6,8,9],multivariate_t:[5,8,9],multivariatemi:[0,5],multivariatepid:[0,6],multivariatet:[0,3,5,7],must:[0,1,2,3,6],mute:[0,1],mutual:[0,2,3,6,8],n:[0,1,2,3,6],n_chunk:[0,2],n_discrete_bin:[0,2],n_edg:0,n_node:[0,7],n_perm:[0,2,3],n_perm_:[0,5,6],n_perm_comp:[0,4],n_perm_max_seq:[0,3,5],n_perm_max_stat:[0,3,5,6],n_perm_mi:[0,3],n_perm_min_stat:[0,3,5,6],n_perm_omnibu:[0,3,5],n_process:[0,1,7],n_realis:[0,1,7],n_realisations_repl:[0,1],n_realisations_sampl:[0,1],n_replic:[0,1],n_sampl:[0,1],name:[0,5,6],nat:[0,2],nearest:[0,2],nearli:[0,2],necessari:[0,1,6],necessarili:[0,6],need:[0,2,6],neighborhood:[0,2],neighbour:[0,2],nemenman:[0,6],network:[0,1,3,6,8],network_a:[0,4],network_analysi:[5,6,8,9],network_b:[0,4],network_comparison:[4,8,9],network_fdr:[0,3,5,7],network_infer:[8,9],network_set_a:[0,4],network_set_b:[0,4],networkanalysi:0,networkcomparison:[0,4],networkinfer:0,networkinferencebivari:0,networkinferencemi:0,networkinferencemultivari:0,networkinferencet:0,networkx:0,neural:[0,1,8],neuroimag:[0,3],neuroinf:[0,6],neuron:[0,6,7],neurophysiolog:0,neurosci:[0,5],never:[0,2],next:[0,2],nichol:[0,3],nitrc:0,node:[0,3,5,8],node_color:0,node_s:0,nois:[0,1,2],noise_level:[0,2],noise_std:[0,1],nollo:[0,5,6],non:[0,1,3,5,6],none:[0,1,2,3,6],nonessenti:[0,6],nonlinear:[0,5,6],nonneg:[0,6],nonuniform:[0,5,6],normal:[0,6],normalis:[0,1,2,6,7],notat:[0,6,7],note:[0,1,2,3,4,5,6,7],novel:[0,1],now:[0,3],np:[0,1,6],nsb:[0,6],nsb_entropi:[0,6],nsb_estim:[0,6],num_rep:[0,2,6],num_thread:[0,2],number:[0,1,2,3,4,5,6,7],number_of_bins_d:[0,6],number_of_bootstrap:[0,6],number_of_bootstraps_nonessenti:[0,6],number_of_bootstraps_r_max:[0,6],number_of_bootstraps_r_tot:[0,6],number_of_delai:[0,6],number_of_sc:[0,6],number_of_symbol:[0,6],numbin:[0,3],numer:[0,2],numpi:[0,1,2,3,4,5,6,7],o:[0,2],obj:0,object:[0,1,2,3,4,6],observ:[0,2,4,5,6],obtain:[0,3,6,7],occur:[0,6],occurr:[0,6],offer:0,often:[0,6],olbrich:[0,2,6],old:[0,3],omnibu:[0,3,5],omnibus_pv:0,omnibus_sign:0,omnibus_t:0,omnibus_test:[0,3],onc:[0,2],one:[0,2,3,4,6],onli:[0,1,2,3,5,6],opencl:[0,8],openclkraskov:[0,2],openclkraskovcmi:[0,2],openclkraskovmi:[0,2],oppos:[0,2],opt_first_bin_s:[0,6,7],opt_number_of_bins_d:[0,6,7],opt_scaling_k:[0,6,7],optim:[0,2,7,8],optimizationrudelt:[0,6],optimize_single_run:[0,6],option:[0,1,2,3,4,5,6,7],order:[0,1,3],org:[0,1,2,5,6],orgini:[0,1],origin:[0,1,2,3,6],other:[0,3,5,6],otherwis:[0,1,3,6],our:[0,2],out:0,outer:[0,2],outofmemoryexcept:0,output:[0,2,4,5,6,7],output_path:[0,6],output_prefix:[0,6],outsid:[0,2],over:[0,1,2,3,4,5,6],overwrit:[0,1,2],own:[0,5,6],p0_sh_x_past_cond_x:[0,6],p:[0,1,2,3,5,6,7],p_0:[0,6],p_valu:[0,3],p_x_past_cond_x:[0,6],p_x_past_uncond:[0,6],p_x_uncond:[0,6],packag:[2,9],package_miss:0,pad:[0,2],page:[0,3,8],pair:[0,5,6],paper:[0,1,3],parallel:[0,1,2,3,6],param:[],paramet:[0,2,3,4,5,6],parent:[0,2,6,7],part:[0,4],partial:[0,1,2,3,7,8],partial_information_decomposit:[0,3],partic:[0,2],particip:[0,4],particular:[0,3],partit:[0,3],pass:[0,2,3,4,6],past:[0,2,3,4,5,6,7],past_range_t:[0,6],past_symbol:[0,6],past_symbol_arrai:[0,6],past_symbol_count:[0,6],path:[0,6],patient:[0,4],patricia:[],pattern:[0,1],pdf:[0,5],peak:[0,6],per:[0,1,2,6],percentil:[0,6],perform:[0,2,3,5,6],performancetip:[0,3],perm_rang:[0,1],perm_set:[0,1],perm_typ:[0,1],permut:[0,1,2,3,4,5,6],permute_in_tim:[0,3,4,5,6],permute_repl:[0,1],permute_sampl:[0,1,4,5,6],permutet:[0,1],perspect:[0,2],phy:[0,2,5,6],physrev:[0,5,6],physrevlett:[0,5],pickl:0,pid:[0,3,7,8],pid_analysi:[0,6],pid_calc_nam:[0,6],pid_estim:[0,6],pipa:[0,5],pl00007990:[0,1],planck:[0,5],platform:[0,2],plo:[0,1,6],plot:[0,6],plot_mute_graph:0,plot_network:0,plot_network_comparison:0,plot_selected_var:0,plug:[0,2,6],plugin:[0,6],plugin_entropi:[0,6],plugin_estim:[0,6],point:[0,1,2,3,6,7],pointless:[0,3],pointwis:0,pone:[0,1],porta:[0,5,6],possibl:[0,2,3,6],posterior:[0,6],posteriori:[0,6],potenti:[0,5],power:[0,3],practic:[0,2],predict:[0,3],prefix:[0,6],preprint2012_25:[0,5],preprint:[0,5],present:[0,3],preserv:[0,6],press:[0,6],pretti:[0,3],previous:[0,5,6],priesemann:[0,6],principl:[0,6],print:[0,2,3,7],print_dict:[0,3],print_edge_list:[0,7],print_matrix:0,printer:[0,3],prior:[0,6],probabl:[0,2,6],problem:8,proc:[0,1],process:[0,1,2,3,4,5,6,7],process_index:[],process_set:[0,6],processes_analys:[0,7],produc:[0,6],product:[0,6],program:[0,2],project:0,prokopenko:[0,2,6],properti:[0,1,2,7],propos:[0,1,2],protocol:0,provid:[0,1,2,3,4,6,7],prune:[0,3,5,6],ps:[0,1,6],psr:[0,1],ptw:[0,7],pval:[0,7],pvalu:[0,5,6,7],pvalue_omnibu:[0,5],pvalues_sign_sourc:[0,5],py:[],pypi:[0,2],python3:0,python:[0,2,3,6],qualit:0,quantifi:[0,2,6],quantiti:[0,6],r:[0,1,2,3,5,6,7],r_max:[0,6],r_nsb:[0,6],r_plugin:[0,6],r_tot:[0,6,7],rais:[0,1,2,3],randint:[0,6],random:[0,1,2,6,7],rang:[0,1,2,3,6],rank:[0,3],rate:[0,3,6,7],rauh:[0,2,6],raw:[0,1,2,3,4,5,6],raw_symbol:[0,6],re:[0,3,6],read:[0,6],realis:[0,1,2,3,5,6,7],realiz:[0,2],rebas:[0,6],recogn:0,recommend:[0,6],record:[0,4,6,7],recording_length:[0,6,7],recurs:0,reduc:[0,6],redund:[0,7],refer:[0,1,2,3,5,6],regard:[0,7],regular:0,rel:[0,6],relat:[0,6],relationship:[0,2],relev:[0,3,5,6],remain:[0,3],reman:[0,3],remanin:[0,3],remov:[0,2,3],remove_column:[0,3],remove_row:[0,3],remove_subresults_single_process:[0,6],repeat:[0,3],repetit:[0,1],repl:[0,1],replic:[0,1,2,3,4,5,6],repo:[],report:[0,8],repres:[0,1,2,3,6,7],represent:[0,6],request:[0,1,3],requir:[0,2,3],res_network:[0,7],res_pid:[0,7],resampl:[0,6],reshap:[0,1],respect:[0,2,5],respons:[0,6],restrict:[0,3],result:[1,2,3,4,5,6,8,9],resultsmultivariatepid:[0,6,7],resultsnetworkanalysi:0,resultsnetworkcomparison:[0,4,7],resultsnetworkinfer:[0,3,5,7],resultspid:[0,6,7],resultssingleprocessanalysi:[0,3,6,7],resultssingleprocessrudelt:[0,6,7],resum:[0,5,6],resume_checkpoint:[0,5,6],retriev:[0,5,6],return_averaged_r:[0,6],return_calc:[0,2],return_count:[0,2],rev:[0,2,5,6],reveal:[0,6],revisit:[0,6],rho:[0,6],rlz:[0,7],robot:[0,2],round:[0,3],routin:0,row:[0,2,3],rtot:[0,6,7],rubinov:[0,5],rudelt:[0,6,7],rudeltabstractestim:[0,6],rudeltabstractnsbestim:[0,6],rudeltbbcestim:[0,6],rudeltnsbestimatorsymbolsmi:[0,6],rudeltpluginestimatorsymbolsmi:[0,6],rudeltshufflingestim:[0,6],run:[0,1,2],s10827:[0,5],s1:[0,2,6],s1_unq:[0,7],s2:[0,2,6],s2_unq:[0,7],s3:[0,6],s:[0,1,2,3,4,5,6],same:[0,1,2,3,4,5,6],sameshima:[0,1],sampl:[0,1,2,3,5,6,7],save:[0,2,3,6],save_json:0,save_pickl:0,scale:[0,6,7],scaling_k:[0,6],scheme:[0,1],schreiber:[0,2,5],sci:[0,2,6],scipi:[0,3],search:[0,2,5,6,8],second:[0,2,3,4,6,7],see:[0,2,3,4,5,6,7],seed:[0,1],select:[0,3,4,5,6],selected_sources_pv:0,selected_sources_t:0,selected_var:[0,7],selected_vars_ful:[0,5,6],selected_vars_sourc:[0,5,7],selected_vars_target:[0,5,7],self:[0,6],separ:[0,3,5,6],separate_arrai:[0,3],sequenti:[0,3],seri:[0,1,2],set:[0,1,2,3,4,5,6,7],set_data:[0,1],setup:[0,3],sever:[0,1],sh:[0,6],shafe:[0,6],shape:[0,3],share:[0,2,3,6,7],shd_s1_s2:[0,7],shift:[0,1],should:[0,2,3,6],show:[0,6],shuffl:[0,1,3,4,5,6],shuffling_mi:[0,6],side:[0,4],sign:[0,6],sign_ominbu:[0,5],sign_sourc:0,signal:0,signific:[0,3,4,5,6,7],significantli:[0,3],similar:[0,2,6,7],simplic:[0,6],simplifi:[0,6],simul:[0,1,6],singl:[0,3,4,5,6,7],single_process_analysi:[8,9],single_process_result:[],singleprocessanalysi:0,singleton:0,size:[0,1,2,6,7],slice:[0,1],slice_permute_repl:[0,1],slice_permute_sampl:[0,1],slid:[0,6],small:[0,1,3],smaller:[0,2,3],smallest:[0,6,7],sn:0,so:[0,2,3,6],soft:[0,2],softwar:0,solver:[0,2],solver_arg:[0,2],some:[0,2,6],sort:[0,3],sort_descend:[0,3],sortind:[0,3],sourc:[0,1,2,3,4,5,6,7],source_1:[0,7],source_2:[0,7],source_i:[0,7],source_set:[0,5],source_target_delai:[0,2],sources_test:0,space:[0,2,5,6],specif:[0,7],specifi:[0,1,5,6,7],spike:[0,7,8],spike_tim:[0,6],spikes_in_window:[0,6],spr:[0,1],squar:[0,1],squeez:0,stage:[0,2],stai:[0,1],stamp:0,stand:0,standard:[0,1,3,6],standardis:[0,1,2,3,7],start:[0,1],stat:[5,6,7,8,9],state:[0,1,2,5,6,7],statis:[0,3],statist:[0,1,3,4,5,6,7],statistic_omnibu:[0,5],statistic_sign_sourc:[0,5],stats_typ:[0,4],step:[0,5,6],stochast:[0,1,7],stoegbauer:[0,2],stop:[0,3],storag:[0,2,3,7,8],store:[0,1,7],str:[0,1,2,4,5,6,7],strategi:[0,1],string:[0,1,3,5,6,7],structur:[0,1],studi:[0,2],style:0,subject:[0,4],submodul:[8,9],subplot:0,subset:[0,3,6],suffici:[0,1,6],sum:[0,6],sum_i:[0,3],summar:[0,6],support:[0,2,6],surrog:[0,1,2,3,4,5,6,7],surrogate_distribut:[0,7],swap:[0,1,2,3],swap_char:[0,3],sxpid:[0,6],sydneypid:[0,2,6],symbol:[0,6],symbol_arrai:[0,6],symbol_array_to_binari:[0,6],symbol_binari:[0,6],symbol_binary_to_arrai:[0,6],symbol_block_length:[0,6],symbol_count:[0,6],symmetr:[0,6],syn_s1_s2:[0,7],syn_shd_against_surrog:[0,3],synergist:[0,2,3,6,7],system:[0,2,6],t:[0,2,3,5,6,7],t_0:[0,6],t_d:[0,6,7],t_max:[0,6],tabl:[0,3],tail:[0,4],tail_comp:[0,4],take:[0,1,6],taken:[0,2,3],target1:[0,6],target:[0,2,3,4,5,6,7],target_r:[0,6],targets_analys:[0,7],tartupid:[0,2],task:[0,4,6],tau:[0,2,6],tau_1:[0,6],tau_r:[0,6,7],tau_sourc:[0,2,5],tau_target:[0,2,5],td:[0,6,7],te:[0,2,3,4,5,6,7],te_max_candid:[0,3],te_min_candid:[0,3],technic:[0,2],techniqu:[0,5,6],tempor:[0,1,2,5,6,7],term:[0,6],test:[0,1,3,4,5,6,7],text:0,than:[0,2,3,6],thei:[0,2,6],theiler:[0,2],theiler_t:[0,2],them:0,theoret:[0,3,7,8],theori:0,therefor:[0,6],thereof:[0,6],thi:[0,1,2,3,4,5,6,7],third:[0,2,6],those:0,thread:[0,2],three:[0,1,2,5,6],threshold:[0,3],through:[0,5,6],thu:[0,1,6],time:[0,1,2,3,4,5,6,7],timescal:[0,6,7],timescale_minimum_past_rang:[0,6],tmax:[0,6],todo:[0,6],togeth:[0,6],toggl:[0,4,5,6],toler:[0,6],too:[0,1,2],tool:[0,6],toolbox:[0,1],toolkit:[0,2],tot:[0,6,7],total:[0,1,2,6,7],toward:[0,6],tracker:8,train:[0,6,7],tranfer:[0,7],transfer:[0,1,2,3,4,7,8],treat:[0,5],trial:[0,1,2],tupl:[0,1,3,5,6,7],tutori:8,two:[0,1,2,3,4,5,6,7],type:[0,1,2,4,6],typeerror:[0,1],typic:[0,6],u:[0,1],unbias:[0,6],uncorrect:[0,7],uncorrel:[0,1],under:[0,2,4,6],understand:[0,6],unequ:[0,3],uniform:[0,2,5,6],union:[0,7],uniqu:[0,2,3,6,7],unit:[0,4],univari:[0,3],unnorm:[0,6],unnormalized_posterior:[0,6],unq_against_surrog:[0,3],unsuccess:[0,2],until:[0,2],unweight:[0,7],up:[0,4,6],upon:0,upper:[0,2,6],us:[0,1,2,3,4,5,6,7],usag:[0,2],use_al:[0,2],user:[0,8],util:[0,8],utilis:[0,2],utl:[0,6],v4:0,v6:0,v7:0,v:[0,6],valid:0,valu:[0,1,2,3,4,5,6,7],var1:[0,2],var2:[0,2],vari:[0,2],variabl:[0,1,2,3,4,5,6,7],variou:[0,1],vars_count:[0,7],vector:[0,1,3],verbos:[0,2,4,5,6],version:[0,2],via:[0,1,2,5,6,7],vicent:[0,2,5],viewer:0,virtualis:[0,2],visual:[0,6],visualis:0,visualise_graph:[8,9],visul:[0,6],vitrualis:[0,2],vs:[0,4],vstack:[0,6],w:[0,6],wa:[0,1,2,4,6,7],wai:[0,7],wang:0,want:[0,8],warn:0,we:[0,1,6],weight:[0,7],weight_typ:0,well:[0,2,3,6],were:[0,5,6,7],what:[0,6],when:[0,1,2,3,5,6],where:[0,1,2,3,5,6,7],whether:[0,6,7],which:[0,1,2,3,4,6],whole:[0,3,4,5,6],whose:[0,6],wibral:[0,5,6],wiki:[0,3,8],william:[0,6],window:[0,2,6],wise:[0,1],within:[0,1,4],without:[0,5,6],workaround:[0,2],write:[0,5,6],write_ckp:[0,5,6],written:0,wrt:[0,5,6,7],www:[0,5],x:[0,1,2,3,6],x_past:[0,6],xi:[0,6],xia:0,xl:0,y:[0,2,6],yield:[0,6,7],you:[0,8],your:[0,2],z:[0,1,2,3,6,7],zero:[0,6],zomaya:[0,2,6]},titles:["idtxl package","The Data Class","Information theoretic estimators","Helper functions","Network comparison","Algorithms for network inference","Algorithms for the analysis of node dynamics","The Results Class","Welcome to IDTxl\u2019s documentation!","idtxl"],titleterms:{"class":[1,7],"function":3,The:[1,7],activ:6,active_information_storag:0,ai:6,algorithm:[5,6],analysi:6,bivari:[5,6],bivariate_mi:0,bivariate_pid:0,bivariate_t:0,bmi:5,bte:5,comparison:[4,7],content:[0,8],cpu:2,data:[0,1,6],decomposit:6,depend:6,document:8,dynam:[6,7],embed:6,embedding_optimization_ais_rudelt:0,entropi:5,estim:[2,6],estimators_jidt:0,estimators_multivariate_pid:0,estimators_opencl:0,estimators_pid:0,estimators_rudelt:0,gpu:2,helper:3,histori:6,idtxl:[0,8,9],idtxl_except:0,idtxl_import:[],idtxl_io:0,idtxl_util:0,indic:8,infer:[5,7],inform:[2,5,6],jidt:2,mmi:5,modul:[0,3],mte:5,multivari:[5,6],multivariate_mi:0,multivariate_pid:0,multivariate_t:0,mutual:5,network:[4,5,7],network_analysi:0,network_comparison:0,network_infer:0,neural:6,node:[6,7],opencl:2,optim:6,packag:[0,8],partial:6,pid:[2,6],result:[0,7],s:8,single_process_analysi:0,spike:6,stat:[0,3],storag:6,submodul:0,tabl:8,theoret:2,transfer:5,util:3,visualise_graph:0,welcom:8}}) \ No newline at end of file diff --git a/docs/idtxl.rst b/docs/idtxl.rst index e9d46f28..6dc6d645 100644 --- a/docs/idtxl.rst +++ b/docs/idtxl.rst @@ -69,6 +69,22 @@ idtxl.active_information_storage module :undoc-members: :show-inheritance: +idtxl.embedding_optimization_ais_Rudelt module +---------------------------------------------- + +.. automodule:: idtxl.embedding_optimization_ais_Rudelt + :members: + :undoc-members: + :show-inheritance: + +idtxl.estimators_Rudelt module +------------------------------ + +.. automodule:: idtxl.estimators_Rudelt + :members: + :undoc-members: + :show-inheritance: + idtxl.estimators_jidt module ---------------------------- @@ -102,14 +118,6 @@ idtxl.estimators_pid module :show-inheritance: -idtxl.idtxl_import module -------------------------- - -.. automodule:: idtxl.idtxl_import - :members: - :undoc-members: - :show-inheritance: - idtxl.idtxl_exceptions module ----------------------------- diff --git a/docs/idtxl_process_analysis.rst b/docs/idtxl_process_analysis.rst index 4d58d0cd..684e1e84 100644 --- a/docs/idtxl_process_analysis.rst +++ b/docs/idtxl_process_analysis.rst @@ -18,3 +18,16 @@ Bivariate Partial Information Decomposition (PID) .. autoclass:: idtxl.bivariate_pid.BivariatePID :members: :noindex: + +History-dependence estimator for neural spiking data +---------------------------------------------------- +Embedding optimization +^^^^^^^^^^^^^^^^^^^^^^ +.. autoclass:: idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt + :members: + :noindex: +Estimators +^^^^^^^^^^ +.. automodule:: idtxl.estimators_Rudelt + :members: + :noindex: diff --git a/docs/idtxl_results_class.rst b/docs/idtxl_results_class.rst index dd16bdd0..31a48a37 100644 --- a/docs/idtxl_results_class.rst +++ b/docs/idtxl_results_class.rst @@ -24,3 +24,6 @@ Results node dynamics .. autoclass:: idtxl.results.ResultsMultivariatePID :members: :noindex: +.. autoclass:: idtxl.results.ResultsSingleProcessRudelt + :members: + :noindex: diff --git a/idtxl/embedding_optimization_ais_Rudelt.py b/idtxl/embedding_optimization_ais_Rudelt.py index 2e1ca2d2..4f106519 100644 --- a/idtxl/embedding_optimization_ais_Rudelt.py +++ b/idtxl/embedding_optimization_ais_Rudelt.py @@ -27,7 +27,7 @@ class OptimizationRudelt(): Args: settings : dict - . estimation_method : string + - estimation_method : string The method to be used to estimate the history dependence 'bbc' or 'shuffling'. - embedding_step_size : float Step size delta t (in seconds) with which the window is slid through the data. @@ -37,21 +37,20 @@ class OptimizationRudelt(): (default: [1, 2, 3, 4, 5]) - embedding_past_range_set : list of floating-point values Set of values for T, the past range (in seconds) to be used for embeddings. - (default: [0.005, 0.00561, 0.00629, 0.00706, 0.00792, 0.00889, 0.00998, 0.01119, 0.01256, - 0.01409, 0.01581, 0.01774, 0.01991, 0.02233, 0.02506, 0.02812, 0.03155, 0.0354, - 0.03972, 0.04456, 0.05, 0.0561, 0.06295, 0.07063, 0.07924, 0.08891, 0.09976, 0.11194, - 0.12559, 0.14092, 0.15811, 0.17741, 0.19905, 0.22334, 0.25059, 0.28117, 0.31548, - 0.35397, 0.39716, 0.44563, 0.5, 0.56101, 0.62946, 0.70627, 0.79245, 0.88914, 0.99763, - 1.11936, 1.25594, 1.40919, 1.58114, 1.77407, 1.99054, 2.23342, 2.50594, 2.81171, 3.15479, - 3.53973, 3.97164, 4.45625, 5.0]) + (default: [0.005, 0.00561, 0.00629, 0.00706, 0.00792, 0.00889, + 0.00998, 0.01119, 0.01256, 0.01409, 0.01581, 0.01774, 0.01991, + 0.02233, 0.02506, 0.02812, 0.03155, 0.0354, 0.03972, 0.04456, + 0.05, 0.0561, 0.06295, 0.07063, 0.07924, 0.08891, 0.09976, + 0.11194, 0.12559, 0.14092, 0.15811, 0.17741, 0.19905, 0.22334, + 0.25059, 0.28117, 0.31548, 0.35397, 0.39716, 0.44563, 0.5, + 0.56101, 0.62946, 0.70627, 0.79245, 0.88914, 0.99763, 1.11936, + 1.25594, 1.40919, 1.58114, 1.77407, 1.99054, 2.23342, 2.50594, + 2.81171, 3.15479, 3.53973, 3.97164, 4.45625, 5.0]) - embedding_scaling_exponent_set : dict Set of values for kappa, the scaling exponent for the bins in the embedding. Should be a python-dictionary with the three entries 'number_of_scalings', 'min_first_bin_size' and 'min_step_for_scaling'. - defaults: {'number_of_scalings': 10, - 'min_first_bin_size': 0.005, - 'min_step_for_scaling': 0.01}) - + defaults: {'number_of_scalings': 10, 'min_first_bin_size': 0.005, 'min_step_for_scaling': 0.01}) - bbc_tolerance : float The tolerance for the Bayesian Bias Criterion. Influences which embeddings are discarded from the analysis. @@ -65,7 +64,6 @@ class OptimizationRudelt(): Minimum past range T_0 (in seconds) to take into consideration for the estimation of the information timescale tau_R. (default: 0.01) - - number_of_bootstraps_R_max : int The number of bootstrap re-shuffles that should be used to determine the optimal embedding. (Bootstrap the estimates of R_max to determine R_tot.) @@ -103,11 +101,11 @@ class OptimizationRudelt(): The upper percentiles for the confidence interval. This has no effect if bootstrap_CI_use_sd is set to True (default: 97.5) - - analyse_auto_MI : bool perform calculation of auto mutual information of the spike train (default: True) If set to True: + - auto_MI_bin_size_set : list of floating-point values Set of values for the sizes of the bins (in seconds). (default: [0.005, 0.01, 0.025, 0.05, 0.25, 0.5]) @@ -120,6 +118,7 @@ class OptimizationRudelt(): the history dependence and the auto mutual information (default: False) if set to True: + - output_path : String Path where the .eps images should be saved - output_prefix : String @@ -652,6 +651,7 @@ def compute_CIs(self, Args: data : data_spiketime object + Input data target_R : String One of 'R_max', 'R_tot' or 'nonessential'. If set to R_max, replications of R are produced for the T at which @@ -879,40 +879,42 @@ def optimize_single_run(self, data, process): optimizes a single realisation of spike time data given the process number Args: - data : Data_spiketime instance - raw data for analysis - process : int - index of process; + data : Data_spiketime instance + raw data for analysis + process : int + index of process; Returns: - returns a DotDict with the following keys - Process : int - Process that was optimized - estimation_method : String - Estimation method that was used for optimization - T_D : float - Estimated optimal value for the temporal depth TD - tau_R : - Information timescale tau_R, a characteristic timescale of history - dependence similar to an autocorrelation time. - R_tot : float - Estimated value for the total history dependence Rtot, - AIS_tot : float - Estimated value for the total active information storage - opt_number_of_bins_d : int - Number of bins d for the embedding that yields (R̂tot ,T̂D) - opt_scaling_k : int - Scaling exponent κ for the embedding that yields (R̂tot , T̂D) - opt_first_bin_size : int - Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ), - history_dependence : array with floating-point values - Estimated history dependence for each embedding - firing_rate : float - Firing rate of the neuron/ spike train - recording_length : float - Length of the recording (in seconds) - H_spiking : float - Entropy of the spike times + DotDict + with the following keys + + Process : int + Process that was optimized + estimation_method : String + Estimation method that was used for optimization + T_D : float + Estimated optimal value for the temporal depth TD + tau_R : + Information timescale tau_R, a characteristic timescale of history + dependence similar to an autocorrelation time. + R_tot : float + Estimated value for the total history dependence Rtot, + AIS_tot : float + Estimated value for the total active information storage + opt_number_of_bins_d : int + Number of bins d for the embedding that yields (R̂tot ,T̂D) + opt_scaling_k : int + Scaling exponent κ for the embedding that yields (R̂tot , T̂D) + opt_first_bin_size : int + Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ), + history_dependence : array with floating-point values + Estimated history dependence for each embedding + firing_rate : float + Firing rate of the neuron/ spike train + recording_length : float + Length of the recording (in seconds) + H_spiking : float + Entropy of the spike times if analyse_auto_MI was set to True additionally: auto_MI : dict diff --git a/idtxl/estimators_Rudelt.py b/idtxl/estimators_Rudelt.py index ba0f7795..5f74f4fa 100644 --- a/idtxl/estimators_Rudelt.py +++ b/idtxl/estimators_Rudelt.py @@ -1020,48 +1020,48 @@ def shuffling_MI(self, symbol_counts, number_of_bins_d): a correction term to reduce its bias. For the plug-in estimate: + - Extract the past_symbol_counts from the symbol_counts. - I_plugin = H(X_past) - H(X_past | X) Notation: - X: current activity, aka response - X_past: past activity - - P_X_uncond: P(X) - P_X_past_uncond: P(X_past) - P_X_past_cond_X: P(X_past | X) - - H_X_past_uncond: H(X_past) - H_X_past_cond_X: H(X_past | X) - - I_plugin: plugin estimate of I(X_past; X) + - X: current activity, aka response + - X_past: past activity + - P_X_uncond: P(X) + - P_X_past_uncond: P(X_past) + - P_X_past_cond_X: P(X_past | X) + - H_X_past_uncond: H(X_past) + - H_X_past_cond_X: H(X_past | X) + - I_plugin: plugin estimate of I(X_past; X) For the correction term: + - Simulate additional data under the assumption that activity - in the past contributes independently towards the current activity. + in the past contributes independently towards the current activity. - Compute the entropy under the assumptions of the model, which - due to its simplicity is easy to sample and the estimate unbiased + due to its simplicity is easy to sample and the estimate unbiased - Compute the entropy using the plug-in estimate, whose bias is - similar to that of the plug-in estimate on the original data + similar to that of the plug-in estimate on the original data - Compute the correction term as the difference between the - unbiased and biased terms + unbiased and biased terms Notation: - P0_sh_X_past_cond_X: P_0,sh(X_past | X), equiv. to P(X_past | X) - on the shuffled data - - H0_X_past_cond_X: H_0(X_past | X), based on the model of independent - contributions - H0_sh_X_past_cond_X: H_0,sh(X_past | X), based on - P0_sh_X_past_cond_X, ie the plug-in estimate - I_corr: the correction term to reduce the bias of I_plugin + - P0_sh_X_past_cond_X: P_0,sh(X_past | X), equiv. to P(X_past | X) + on the shuffled data + - H0_X_past_cond_X: H_0(X_past | X), based on the model of independent + contributions + - H0_sh_X_past_cond_X: H_0,sh(X_past | X), based on + - P0_sh_X_past_cond_X, ie the plug-in estimate + - I_corr: the correction term to reduce the bias of I_plugin - - :param symbol_counts: the activity of a spike train is embedded into symbols, - whose occurences are counted (cf emb.get_symbol_counts) - :param number_of_bins_d: the number of bins of the embedding + Args: + symbol_counts : iterable + the activity of a spike train is embedded into symbols, + whose occurrences are counted (cf emb.get_symbol_counts) + number_of_bins_d : int + the number of bins of the embedding """ # plug-in estimate diff --git a/idtxl/results.py b/idtxl/results.py index aaa6685d..22dea4be 100644 --- a/idtxl/results.py +++ b/idtxl/results.py @@ -1041,7 +1041,9 @@ def get_target_sources(self, target): class ResultsSingleProcessRudelt(): """Store results of single process analysis. - Provides a container for the results Rudelt optimization algorithm + Provides a container for the results Rudelt optimization algorithm. To + obtain results for individual processes, call the .get_single_process() + method (see docstring for details). Note that for convenience all dictionaries in this class can additionally be accessed using dot-notation: @@ -1060,45 +1062,6 @@ class ResultsSingleProcessRudelt(): - n_processes : int - total number of processes analysed processes_analysed : list list of analysed processes - _single_processes : dict - containing the results of all analysed processes - The results of each process can be extracted using: - >>> = .get_single_process() - The extracted single process results contains a DotDict with the following entries: - Process : int - Process that was optimized - estimation_method : String - Estimation method that was used for optimization - T_D : float - Estimated optimal value for the temporal depth TD - tau_R : - Information timescale tau_R, a characteristic timescale of history - dependence similar to an autocorrelation time. - R_tot : float - Estimated value for the total history dependence Rtot, - AIS_tot : float - Estimated value for the total active information storage - opt_number_of_bins_d : int - Number of bins d for the embedding that yields (R̂tot ,T̂D) - opt_scaling_k : int - Scaling exponent κ for the embedding that yields (R̂tot , T̂D) - opt_first_bin_size : int - Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ), - history_dependence : array with floating-point values - Estimated history dependence for each embedding - firing_rate : float - Firing rate of the neuron/ spike train - recording_length : float - Length of the recording (in seconds) - H_spiking : float - Entropy of the spike times - - if analyse_auto_MI was set to True additionally: - auto_MI : dict - numpy array of MI values for each delay - auto_MI_delays : list of int - list of delays depending on the given auto_MI_bin_sizes and auto_MI_max_delay - """ def __init__(self, processes): @@ -1132,50 +1095,51 @@ def get_single_process(self, process): Return results for individual processes, contains for each process - Process : int - Process that was optimized - estimation_method : String - Estimation method that was used for optimization - T_D : float - Estimated optimal value for the temporal depth TD - tau_R : - Information timescale tau_R, a characteristic timescale of history - dependence similar to an autocorrelation time. - R_tot : float - Estimated value for the total history dependence Rtot, - AIS_tot : float - Estimated value for the total active information storage - opt_number_of_bins_d : int - Number of bins d for the embedding that yields (R̂tot ,T̂D) - opt_scaling_k : int - Scaling exponent κ for the embedding that yields (R̂tot , T̂D) - opt_first_bin_size : int - Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ), - history_dependence : array with floating-point values - Estimated history dependence for each embedding - firing_rate : float - Firing rate of the neuron/ spike train - recording_length : float - Length of the recording (in seconds) - H_spiking : float - Entropy of the spike times - - if analyse_auto_MI was set to True additionally: - auto_MI : dict - numpy array of MI values for each delay - auto_MI_delays : list of int - list of delays depending on the given auto_MI_bin_sizes and auto_MI_max_delay - Args: process : int process id - + Returns: dict results for single process. Note that for convenience dictionary entries can either be accessed via keywords (result['selected_vars']) or via dot-notation - (result.selected_vars). + (result.selected_vars). Contains keys + + Process : int + Process that was optimized + estimation_method : String + Estimation method that was used for optimization + T_D : float + Estimated optimal value for the temporal depth TD + tau_R : + Information timescale tau_R, a characteristic timescale of history + dependence similar to an autocorrelation time. + R_tot : float + Estimated value for the total history dependence Rtot, + AIS_tot : float + Estimated value for the total active information storage + opt_number_of_bins_d : int + Number of bins d for the embedding that yields (R̂tot ,T̂D) + opt_scaling_k : int + Scaling exponent κ for the embedding that yields (R̂tot , T̂D) + opt_first_bin_size : int + Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ), + history_dependence : array with floating-point values + Estimated history dependence for each embedding + firing_rate : float + Firing rate of the neuron/ spike train + recording_length : float + Length of the recording (in seconds) + H_spiking : float + Entropy of the spike times + + if analyse_auto_MI was set to True additionally: + auto_MI : dict + numpy array of MI values for each delay + auto_MI_delays : list of int + list of delays depending on the given auto_MI_bin_sizes and auto_MI_max_delay + """ # Return required key from required _single_process dictionary if process not in self.processes_analysed:
      \ No newline at end of file diff --git a/docs/html/idtxl.html b/docs/html/idtxl.html index d75987f5..187e432b 100644 --- a/docs/html/idtxl.html +++ b/docs/html/idtxl.html @@ -4,11 +4,12 @@ - - idtxl package — IDTxl 1.2.1 documentation - - - + + + idtxl package — IDTxl 1.3 documentation + + + @@ -35,7 +36,7 @@

      Navigation

    • previous |
    • - + @@ -45,17 +46,17 @@

      Navigation

      -
      +

      idtxl package

      -
      +

      Submodules

      -
      -
      +
      +

      idtxl.data module

      Provide data structures for IDTxl analysis.

      -
      -class idtxl.data.Data(data=None, dim_order='psr', normalise=True, seed=None)[source]
      +
      +class idtxl.data.Data(data=None, dim_order='psr', normalise=True, seed=None)[source]

      Bases: object

      Store data for information dynamics estimation.

      Data takes a 1- to 3-dimensional array representing realisations of random @@ -119,15 +120,15 @@

      Submodules -
      -property data
      +
      +
      +property data

      Return data array.

      -
      -generate_logistic_maps_data(n_samples=1000, n_replications=10, coefficient_matrices=array([[[0.5, 0.0], [0.4, 0.5]]]), noise_std=0.1)[source]
      +
      +generate_logistic_maps_data(n_samples=1000, n_replications=10, coefficient_matrices=array([[[0.5, 0.], [0.4, 0.5]]]), noise_std=0.1)[source]

      Generate discrete-time coupled-logistic-maps time series.

      Generate data and overwrite the instance’s current data.

      The implemented logistic map function is f(x) = 4 * x * (1 - x).

      @@ -153,8 +154,8 @@

      Submodules -
      -generate_mute_data(n_samples=1000, n_replications=10)[source]
      +
      +generate_mute_data(n_samples=1000, n_replications=10)[source]

      Generate example data for a 5-process network.

      Generate example data and overwrite the instance’s current data. The network is used as an example the paper on the MuTE toolbox (Montalto, @@ -188,8 +189,8 @@

      Submodules -
      -generate_var_data(n_samples=1000, n_replications=10, coefficient_matrices=array([[[0.5, 0.0], [0.4, 0.5]]]), noise_std=0.1)[source]
      +
      +generate_var_data(n_samples=1000, n_replications=10, coefficient_matrices=array([[[0.5, 0.], [0.4, 0.5]]]), noise_std=0.1)[source]

      Generate discrete-time VAR (vector autoregressive) time series.

      Generate data and overwrite the instance’s current data.

      @@ -214,8 +215,8 @@

      Submodules -
      -get_realisations(current_value, idx_list, shuffle=False)[source]
      +
      +get_realisations(current_value, idx_list, shuffle=False)[source]

      Return realisations for a list of indices.

      Return realisations for indices in list. Optionally, realisations can be shuffled to create surrogate data for statistical testing. For @@ -306,20 +307,20 @@

      Submodules -
      -get_seed()[source]
      +
      +get_seed()[source]

      return the initial seed of the data

      -
      -get_state()[source]
      +
      +get_state()[source]

      return the current state of the random seed

      -
      -n_realisations(current_value=None)[source]
      +
      +n_realisations(current_value=None)[source]

      Number of realisations over samples and replications.

      Args:
      @@ -335,14 +336,14 @@

      Submodules -
      -n_realisations_repl()[source]
      +
      +n_realisations_repl()[source]

      Number of realisations over replications.

      -
      -n_realisations_samples(current_value=None)[source]
      +
      +n_realisations_samples(current_value=None)[source]

      Number of realisations over samples.

      Args:
      @@ -357,8 +358,8 @@

      Submodules -
      -permute_replications(current_value, idx_list)[source]
      +
      +permute_replications(current_value, idx_list)[source]

      Return realisations with permuted replications (time stays intact).

      Create surrogate data by permuting realisations over replications while keeping the temporal structure (order of samples) intact. Return @@ -447,8 +448,8 @@

      Submodules -
      -permute_samples(current_value, idx_list, perm_settings)[source]
      +
      +permute_samples(current_value, idx_list, perm_settings)[source]

      Return realisations with permuted samples (repl. stays intact).

      Create surrogate data by permuting realisations over samples (time) while keeping the order of replications intact. Surrogates can be @@ -658,8 +659,8 @@

      Submodules -
      -set_data(data, dim_order)[source]
      +
      +set_data(data, dim_order)[source]

      Overwrite data in an existing Data object.

      Args:
      @@ -675,8 +676,8 @@

      Submodules -
      -slice_permute_replications(process)[source]
      +
      +slice_permute_replications(process)[source]

      Return data slice with permuted replications (time stays intact).

      Create surrogate data by permuting realisations over replications while keeping the temporal structure (order of samples) intact. Return @@ -686,8 +687,8 @@

      Submodules -
      -slice_permute_samples(process, perm_settings)[source]
      +
      +slice_permute_samples(process, perm_settings)[source]

      Return slice of data with permuted samples (repl. stays intact).

      Create surrogate data by permuting data in a slice over samples (time) while keeping the order of replications intact. Return slice for the @@ -886,8 +887,8 @@

      Submodules +

      +

      idtxl.bivariate_te module

      Perform network inference using multivarate transfer entropy.

      Estimate multivariate transfer entropy (TE) for network inference using a @@ -898,8 +899,8 @@

      Submodules -
      -class idtxl.bivariate_te.BivariateTE[source]
      +
      +class idtxl.bivariate_te.BivariateTE[source]

      Bases: idtxl.network_inference.NetworkInferenceTE, idtxl.network_inference.NetworkInferenceBivariate

      Perform network inference using bivariate transfer entropy.

      Perform network inference using bivariate transfer entropy (TE). To @@ -955,8 +956,8 @@

      Submodules -
      -analyse_network(settings, data, targets='all', sources='all')[source]
      +
      +analyse_network(settings, data, targets='all', sources='all')[source]

      Find bivariate transfer entropy between all nodes in the network.

      Estimate bivariate transfer entropy (TE) between all nodes in the network or between selected sources and targets.

      @@ -1017,8 +1018,8 @@

      Submodules -
      -analyse_single_target(settings, data, target, sources='all')[source]
      +
      +analyse_single_target(settings, data, target, sources='all')[source]

      Find bivariate transfer entropy between sources and a target.

      Find bivariate transfer entropy (TE) between all potential source processes and the target process. Uses bivariate, non-uniform embedding @@ -1131,8 +1132,8 @@

      Submodules +

      +

      idtxl.bivariate_mi module

      Perform network inference using bivarate mutual information.

      Estimate bivariate mutual information (MI) for network inference using a @@ -1143,8 +1144,8 @@

      Submodules -
      -class idtxl.bivariate_mi.BivariateMI[source]
      +
      +class idtxl.bivariate_mi.BivariateMI[source]

      Bases: idtxl.network_inference.NetworkInferenceMI, idtxl.network_inference.NetworkInferenceBivariate

      Perform network inference using bivariate mutual information.

      Perform network inference using bivariate mutual information (MI). To @@ -1194,8 +1195,8 @@

      Submodules -
      -analyse_network(settings, data, targets='all', sources='all')[source]
      +
      +analyse_network(settings, data, targets='all', sources='all')[source]

      Find bivariate mutual information between all nodes in the network.

      Estimate bivariate mutual information (MI) between all nodes in the network or between selected sources and targets.

      @@ -1259,8 +1260,8 @@

      Submodules -
      -analyse_single_target(settings, data, target, sources='all')[source]
      +
      +analyse_single_target(settings, data, target, sources='all')[source]

      Find bivariate mutual information between sources and a target.

      Find bivariate mutual information (MI) between all potential source processes and the target process. Uses bivariate, non-uniform embedding @@ -1374,8 +1375,8 @@

      Submodules +

      +

      idtxl.bivariate_pid module

      Estimate partial information decomposition (PID).

      Estimate PID for two source and one target process using different estimators.

      @@ -1384,8 +1385,8 @@

      Submodules -
      -class idtxl.bivariate_pid.BivariatePID[source]
      +
      +class idtxl.bivariate_pid.BivariatePID[source]

      Bases: idtxl.single_process_analysis.SingleProcessAnalysis

      Perform partial information decomposition for individual processes.

      Perform partial information decomposition (PID) for two source processes @@ -1417,8 +1418,8 @@

      Submodules -
      -analyse_network(settings, data, targets, sources)[source]
      +
      +analyse_network(settings, data, targets, sources)[source]

      Estimate partial information decomposition for network nodes.

      Estimate partial information decomposition (PID) for multiple nodes in the network.

      @@ -1481,8 +1482,8 @@

      Submodules -
      -analyse_single_target(settings, data, target, sources)[source]
      +
      +analyse_single_target(settings, data, target, sources)[source]

      Estimate partial information decomposition for a network node.

      Estimate partial information decomposition (PID) for a target node in the network.

      @@ -1546,8 +1547,8 @@

      Submodules +

      +

      idtxl.multivariate_te module

      Perform network inference using multivarate transfer entropy.

      Estimate multivariate transfer entropy (TE) for network inference using a @@ -1558,8 +1559,8 @@

      Submodules -
      -class idtxl.multivariate_te.MultivariateTE[source]
      +
      +class idtxl.multivariate_te.MultivariateTE[source]

      Bases: idtxl.network_inference.NetworkInferenceTE, idtxl.network_inference.NetworkInferenceMultivariate

      Perform network inference using multivariate transfer entropy.

      Perform network inference using multivariate transfer entropy (TE). To @@ -1583,8 +1584,9 @@

      Submoduleshttp://doi.org/10.1103/PhysRevE.83.051112

      -
      -
      Attributes:
      +

      Attributes:

      +
      +
      source_setlist

      indices of source processes tested for their influence on the target

      @@ -1612,11 +1614,10 @@

      Submodulesbool

      statistical significance of the over-all TE

      -
      -
      +

      -
      -analyse_network(settings, data, targets='all', sources='all')[source]
      +
      +analyse_network(settings, data, targets='all', sources='all')[source]

      Find multivariate transfer entropy between all nodes in the network.

      Estimate multivariate transfer entropy (TE) between all nodes in the network or between selected sources and targets.

      @@ -1678,8 +1679,8 @@

      Submodules -
      -analyse_single_target(settings, data, target, sources='all')[source]
      +
      +analyse_single_target(settings, data, target, sources='all')[source]

      Find multivariate transfer entropy between sources and a target.

      Find multivariate transfer entropy (TE) between all source processes and the target process. Uses multivariate, non-uniform embedding found @@ -1787,14 +1788,14 @@

      Submodules -
      -getit()[source]
      +
      +getit()[source]

      -
      -
      + +

      idtxl.multivariate_mi module

      Perform network inference using multivarate mutual information.

      Estimate multivariate mutual information (MI) for network inference using a @@ -1805,8 +1806,8 @@

      Submodules -
      -class idtxl.multivariate_mi.MultivariateMI[source]
      +
      +class idtxl.multivariate_mi.MultivariateMI[source]

      Bases: idtxl.network_inference.NetworkInferenceMI, idtxl.network_inference.NetworkInferenceMultivariate

      Perform network inference using multivariate mutual information.

      Perform network inference using multivariate mutual information (MI). To @@ -1854,8 +1855,8 @@

      Submodules -
      -analyse_network(settings, data, targets='all', sources='all')[source]
      +
      +analyse_network(settings, data, targets='all', sources='all')[source]

      Find multivariate mutual information between nodes in the network.

      Estimate multivariate mutual information (MI) between all nodes in the network or between selected sources and targets.

      @@ -1923,8 +1924,8 @@

      Submodules -
      -analyse_single_target(settings, data, target, sources='all')[source]
      +
      +analyse_single_target(settings, data, target, sources='all')[source]

      Find multivariate mutual information between sources and a target.

      Find multivariate mutual information (MI) between all source processes and the target process. Uses multivariate, non-uniform embedding found @@ -2035,8 +2036,8 @@

      Submodules +

      +

      idtxl.multivariate_pid module

      Estimate partial information decomposition (PID).

      Estimate PID for multiple sources (up to 4 sources) and one target process @@ -2046,8 +2047,8 @@

      Submodules -
      -class idtxl.multivariate_pid.MultivariatePID[source]
      +
      +class idtxl.multivariate_pid.MultivariatePID[source]

      Bases: idtxl.single_process_analysis.SingleProcessAnalysis

      Perform partial information decomposition for individual processes.

      Perform partial information decomposition (PID) for multiple source @@ -2079,8 +2080,8 @@

      Submodules -
      -analyse_network(settings, data, targets, sources)[source]
      +
      +analyse_network(settings, data, targets, sources)[source]

      Estimate partial information decomposition for network nodes.

      Estimate, for multiple nodes (target processes), the partial information decomposition (PID) for multiple source processes @@ -2144,8 +2145,8 @@

      Submodules -
      -analyse_single_target(settings, data, target, sources)[source]
      +
      +analyse_single_target(settings, data, target, sources)[source]

      Estimate partial information decomposition for a network node.

      Estimate partial information decomposition (PID) for multiple source processes (up to 4 sources) and a target process in the network.

      @@ -2206,8 +2207,8 @@

      Submodules +

      +

      idtxl.active_information_storage module

      Analysis of AIS in a network of processes.

      Analysis of active information storage (AIS) in individual processes of a @@ -2217,8 +2218,8 @@

      Submodules -
      -class idtxl.active_information_storage.ActiveInformationStorage[source]
      +
      +class idtxl.active_information_storage.ActiveInformationStorage[source]

      Bases: idtxl.single_process_analysis.SingleProcessAnalysis

      Estimate active information storage in individual processes.

      Estimate active information storage (AIS) in individual processes of the @@ -2261,8 +2262,8 @@

      Submodules -
      -analyse_network(settings, data, processes='all')[source]
      +
      +analyse_network(settings, data, processes='all')[source]

      Estimate active information storage for multiple network processes.

      Estimate active information storage for all or a subset of processes in the network.

      @@ -2317,74 +2318,1206 @@

      Submodules -
      -analyse_single_process(settings, data, process)[source]
      -

      Estimate active information storage for a single process.

      -

      Estimate active information storage for one process in the network. -Uses non-uniform embedding found through information maximisation. This -is done in three steps (see Lizier and Faes for details):

      -
        -
      1. Find all relevant samples in the processes’ own past, by -iteratively adding candidate samples that have significant -conditional mutual information (CMI) with the current value -(conditional on all samples that were added previously)

      2. -
      3. Prune the final conditional set by testing the CMI between each -sample in the final set and the current value, conditional on all -other samples in the final set

      4. -
      5. Calculate AIS using the final set of candidates as the past state -(calculate MI between samples in the past and the current value); -test for statistical significance using a permutation test

      6. -
      -
      -
      Note:

      For a further description of the algorithm see references in the -class docstring.

      +
      + +
      +
      +analyse_single_process(settings, data, process)[source]
      +

      Estimate active information storage for a single process.

      +

      Estimate active information storage for one process in the network. +Uses non-uniform embedding found through information maximisation. This +is done in three steps (see Lizier and Faes for details):

      +
        +
      1. Find all relevant samples in the processes’ own past, by +iteratively adding candidate samples that have significant +conditional mutual information (CMI) with the current value +(conditional on all samples that were added previously)

      2. +
      3. Prune the final conditional set by testing the CMI between each +sample in the final set and the current value, conditional on all +other samples in the final set

      4. +
      5. Calculate AIS using the final set of candidates as the past state +(calculate MI between samples in the past and the current value); +test for statistical significance using a permutation test

      6. +
      +
      +
      Note:

      For a further description of the algorithm see references in the +class docstring.

      +
      +
      Args:
      +
      settingsdict

      parameters for estimator use and statistics:

      +
        +
      • cmi_estimator : str - estimator to be used for CMI and MI +calculation (for estimator settings see the documentation in +the estimators_* modules)

      • +
      • max_lag : int - maximum temporal search depth for candidates +in the processes’ past in samples

      • +
      • tau : int [optional] - spacing between candidates in the +sources’ past in samples (default=1)

      • +
      • n_perm_* : int [optional] - number of permutations, where * +can be ‘max_stat’, ‘min_stat’, ‘mi’ (default=500)

      • +
      • alpha_* : float [optional] - critical alpha level for +statistical significance, where * can be ‘max_stat’, +‘min_stat’, ‘mi’ (default=0.05)

      • +
      • add_conditionals : list of tuples | str [optional] - force +the estimator to add these conditionals when estimating TE; +can either be a list of variables, where each variable is +described as (idx process, lag wrt to current value) or can +be a string: ‘faes’ for Faes-Method (see references)

      • +
      • permute_in_time : bool [optional] - force surrogate creation +by shuffling realisations in time instead of shuffling +replications; see documentation of Data.permute_samples() for +further settings (default=False)

      • +
      • verbose : bool [optional] - toggle console output +(default=True)

      • +
      • write_ckp : bool [optional] - enable checkpointing, writes +analysis state to disk every time a variable is selected; +resume crashed analysis using +network_analysis.resume_checkpoint() (default=False)

      • +
      • filename_ckp : str [optional] - checkpoint file name (without +extension) (default=’./idtxl_checkpoint’)

      • +
      +
      +
      dataData instance

      raw data for analysis

      +
      +
      processint

      index of process

      +
      +
      +
      +
      Returns:
      +
      ResultsSingleProcessAnalysis instance

      results of AIS estimation, see documentation of +ResultsSingleProcessAnalysis()

      +
      +
      +
      +
      +
      + +
      + +

      +
      +

      idtxl.embedding_optimization_ais_Rudelt module

      +

      Optimization of embedding parameters of spike times using the history dependence estimators

      +
      +
      +class idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt(settings=None)[source]
      +

      Bases: object

      +

      Optimization of embedding parameters of spike times using the history dependence estimators

      +

      References:

      +
      +
      +
      [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding

      optimization reveals long-lasting history dependence in +neural spiking activity, 2021, PLOS Computational Biology, 17(6)

      +
      +
      +

      [2]: https://github.com/Priesemann-Group/hdestimator

      +
      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +
      +
      Args:
      +
      settingsdict
        +
      • +
        estimation_methodstring

        The method to be used to estimate the history dependence ‘bbc’ or ‘shuffling’.

        +
        +
        +
      • +
      • +
        embedding_step_sizefloat

        Step size delta t (in seconds) with which the window is slid through the data. +(default: 0.005)

        +
        +
        +
      • +
      • +
        embedding_number_of_bins_setlist of integer values

        Set of values for d, the number of bins in the embedding. +(default: [1, 2, 3, 4, 5])

        +
        +
        +
      • +
      • +
        embedding_past_range_setlist of floating-point values

        Set of values for T, the past range (in seconds) to be used for embeddings. +(default: [0.005, 0.00561, 0.00629, 0.00706, 0.00792, 0.00889, +0.00998, 0.01119, 0.01256, 0.01409, 0.01581, 0.01774, 0.01991, +0.02233, 0.02506, 0.02812, 0.03155, 0.0354, 0.03972, 0.04456, +0.05, 0.0561, 0.06295, 0.07063, 0.07924, 0.08891, 0.09976, +0.11194, 0.12559, 0.14092, 0.15811, 0.17741, 0.19905, 0.22334, +0.25059, 0.28117, 0.31548, 0.35397, 0.39716, 0.44563, 0.5, +0.56101, 0.62946, 0.70627, 0.79245, 0.88914, 0.99763, 1.11936, +1.25594, 1.40919, 1.58114, 1.77407, 1.99054, 2.23342, 2.50594, +2.81171, 3.15479, 3.53973, 3.97164, 4.45625, 5.0])

        +
        +
        +
      • +
      • +
        embedding_scaling_exponent_setdict

        Set of values for kappa, the scaling exponent for the bins in the embedding. +Should be a python-dictionary with the three entries ‘number_of_scalings’, ‘min_first_bin_size’ and +‘min_step_for_scaling’. +defaults: {‘number_of_scalings’: 10, ‘min_first_bin_size’: 0.005, ‘min_step_for_scaling’: 0.01})

        +
        +
        +
      • +
      • +
        bbc_tolerancefloat

        The tolerance for the Bayesian Bias Criterion. Influences which embeddings are +discarded from the analysis. +(default: 0.05)

        +
        +
        +
      • +
      • +
        return_averaged_Rbool

        Return R_tot as the average over R(T) for T in [T_D, T_max], instead of R_tot = R(T_D). +If set to True, the setting for number_of_bootstraps_R_tot (see below) is ignored and set to 0 +and CI bounds are not calculated. +(default: True)

        +
        +
        +
      • +
      • +
        timescale_minimum_past_rangefloat

        Minimum past range T_0 (in seconds) to take into consideration for the estimation of the +information timescale tau_R. +(default: 0.01)

        +
        +
        +
      • +
      • +
        number_of_bootstraps_R_maxint

        The number of bootstrap re-shuffles that should be used to determine the optimal +embedding. (Bootstrap the estimates of R_max to determine R_tot.) +These are computed during the ‘history-dependence’ task because they are essential +to obtain R_tot. +(default: 250)

        +
        +
        +
      • +
      • +
        number_of_bootstraps_R_totint

        The number of bootstrap re-shuffles that should be used to estimate the confidence +interval of the optimal embedding. (Bootstrap the estimates of R_tot = R(T_D) to +obtain a confidence interval for R_tot.). +These are computed during the ‘confidence-intervals’ task. +The setting return_averaged_R (see above) needs to be set to False for this setting +to take effect. +(default: 250)

        +
        +
        +
      • +
      • +
        number_of_bootstraps_nonessentialint

        The number of bootstrap re-shuffles that should be used to estimate the confidence +intervals for embeddings other than the optimal one. (Bootstrap the estimates of +R(T) for all other T.) +(These are not necessary for the main analysis and therefore default to 0.)

        +
        +
        +
      • +
      • +
        symbol_block_lengthint

        The number of symbols that should be drawn in each block for bootstrap resampling +If it is set to None (recommended), the length is automatically chosen, based +on heuristics +(default: None)

        +
        +
        +
      • +
      • +
        bootstrap_CI_use_sdbool

        Most of the time we observed normally-distributed bootstrap replications, +so it is sufficient (and more efficient) to compute confidence intervals +based on the standard deviation +(default: True)

        +
        +
        +
      • +
      • +
        bootstrap_CI_percentile_lofloat

        The lower percentile for the confidence interval. +This has no effect if bootstrap_CI_use_sd is set to True +(default: 2.5)

        +
        +
        +
      • +
      • +
        bootstrap_CI_percentile_hifloat

        The upper percentiles for the confidence interval. +This has no effect if bootstrap_CI_use_sd is set to True +(default: 97.5)

        +
        +
        +
      • +
      • +
        analyse_auto_MIbool

        perform calculation of auto mutual information of the spike train +(default: True) +If set to True:

        +
          +
        • +
          auto_MI_bin_size_setlist of floating-point values

          Set of values for the sizes of the bins (in seconds). +(default: [0.005, 0.01, 0.025, 0.05, 0.25, 0.5])

          +
          +
          +
        • +
        • +
          auto_MI_max_delayint

          The maximum delay (in seconds) between the past bin and the response. +(default: 5)

          +
          +
          +
        • +
        +
        +
        +
      • +
      • +
        visualizationbool

        create .eps output image showing the optimization values and graphs for +the history dependence and the auto mutual information +(default: False) +if set to True:

        +
          +
        • +
          output_pathString

          Path where the .eps images should be saved

          +
          +
          +
        • +
        • +
          output_prefixString

          Prefix of the output images +e.g. <output_prefix>_process0.eps

          +
          +
          +
        • +
        +
        +
        +
      • +
      • +
        debug: bool

        show values while calculating +(default: False)

        +
        +
        +
      • +
      +
      +
      +
      +
      +
      +
      +analyse_auto_MI(spike_times)[source]
      +

      Get the auto MI for the spike times. If it is available from file, load +it, else compute it.

      +
      + +
      +
      +check_inputs()[source]
      +

      Check input settings for completeness

      +
      + +
      +
      +compute_CIs(data, target_R='R_max', symbol_block_length=None)[source]
      +

      Compute bootstrap replications of the history dependence estimate +which can be used to obtain confidence intervals.

      +
      +
      Args:
      +
      datadata_spiketime object

      Input data

      +
      +
      target_RString

      One of ‘R_max’, ‘R_tot’ or ‘nonessential’. +If set to R_max, replications of R are produced for the T at which +R is maximised. +If set to R_tot, replications of R are produced for T = T_D (cf +get_temporal_depth_T_D). +If set to nonessential, replications of R are produced for each T +(one embedding per T, cf get_embeddings_that_maximise_R). These +are not otherwise used in the analysis and are probably only useful +if the resulting plot is visually inspected, so in most cases it can +be set to zero.

      +
      +
      symbol_block_lengthint

      The number of symbols that should be drawn in each block for bootstrap resampling +If it is set to None (recommended), the length is automatically chosen, based +on heuristics

      +
      +
      +
      +
      +
      + +
      +
      +get_R_tot(return_averaged_R=False, **kwargs)[source]
      +
      + +
      +
      +get_auto_MI(spike_times, bin_size, number_of_delays)[source]
      +

      Compute the auto mutual information in the neuron’s activity, a +measure closely related to history dependence.

      +
      + +
      +
      +get_bootstrap_history_dependence(data, embedding, number_of_bootstraps, symbol_block_length=None)[source]
      +

      For a given embedding, return bootstrap replications for R.

      +
      + +
      +
      +get_embeddings(embedding_past_range_set, embedding_number_of_bins_set, embedding_scaling_exponent_set)[source]
      +

      Get all combinations of parameters T, d, k, based on the +sets of selected parameters.

      +
      + +
      +
      +get_embeddings_that_maximise_R(bbc_tolerance=None, dependent_var='T', get_as_list=False)[source]
      +

      For each T (or d), get the embedding for which R is maximised.

      +

      For the bbc estimator, here the bbc_tolerance is applied, ie +get the unbiased embeddings that maximise R.

      +
      + +
      +
      +get_history_dependence(data, process)[source]
      +

      Estimate the history dependence for each embedding to all given processes.

      +
      + +
      +
      +get_information_timescale_tau_R()[source]
      +

      Get the information timescale tau_R, a characteristic +timescale of history dependence similar to an autocorrelation +time.

      +
      + +
      +
      +get_past_range(number_of_bins_d, first_bin_size, scaling_k)[source]
      +

      Get the past range T of the embedding, based on the parameters d, tau_1 and k.

      +
      + +
      +
      +get_set_of_scalings(past_range_T, number_of_bins_d, number_of_scalings, min_first_bin_size, min_step_for_scaling)[source]
      +

      Get scaling exponents such that the uniform embedding as well as +the embedding for which the first bin has a length of +min_first_bin_size (in seconds), as well as linearly spaced +scaling factors in between, such that in total +number_of_scalings scalings are obtained.

      +
      + +
      +
      +get_temporal_depth_T_D(get_R_thresh=False)[source]
      +

      Get the temporal depth T_D, the past range for the +‘optimal’ embedding parameters.

      +

      Given the maximal history dependence R at each past range T, +(cf get_embeddings_that_maximise_R), first find the smallest T at +which R is maximised (cf get_max_R_T). If bootstrap replications +for this R are available, get the smallest T at which this R minus +one standard deviation of the bootstrap estimates is attained.

      +
      + +
      +
      +optimize(data, processes='all')[source]
      +

      Optimize the embedding parameters of spike time data using the Rudelt history dependence estimator.

      +

      References:

      +
      +
      +
      [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding

      optimization reveals long-lasting history dependence in +neural spiking activity, 2021, PLOS Computational Biology, 17(6)

      +
      +
      +

      [2]: https://github.com/Priesemann-Group/hdestimator

      +
      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +
      +
      Args:
      +
      dataData_spiketime instance

      raw data for analysis

      +
      +
      processeslist of int

      index of processes; +spike times are optimized all processes specified in the list separately.

      +
      +
      +
      +
      Returns: # ——————————————————————————————————– TODO
      +
      ResultsSingleProcessRudelt instance

      results of Rudelt optimization, see documentation of +ResultsSingleProcessRudelt()

      +
      +
      if visulization in settings was set True (see class OptimizationRudelt):
      +
      .eps images are created for each optimized process containing:
        +
      • optimized values for the process

      • +
      • graph for the history dependence

      • +
      • graph for auto mutual information (if calculated)

      • +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +optimize_single_run(data, process)[source]
      +

      optimizes a single realisation of spike time data given the process number

      +
      +
      Args:
      +
      dataData_spiketime instance

      raw data for analysis

      +
      +
      processint

      index of process;

      +
      +
      +
      +
      Returns:
      +
      DotDict

      with the following keys

      +
      +
      Processint

      Process that was optimized

      +
      +
      estimation_methodString

      Estimation method that was used for optimization

      +
      +
      T_Dfloat

      Estimated optimal value for the temporal depth TD

      +
      +
      tau_R :

      Information timescale tau_R, a characteristic timescale of history +dependence similar to an autocorrelation time.

      +
      +
      R_totfloat

      Estimated value for the total history dependence Rtot,

      +
      +
      AIS_totfloat

      Estimated value for the total active information storage

      +
      +
      opt_number_of_bins_dint

      Number of bins d for the embedding that yields (R̂tot ,T̂D)

      +
      +
      opt_scaling_kint

      Scaling exponent κ for the embedding that yields (R̂tot , T̂D)

      +
      +
      opt_first_bin_sizeint

      Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ),

      +
      +
      history_dependencearray with floating-point values

      Estimated history dependence for each embedding

      +
      +
      firing_ratefloat

      Firing rate of the neuron/ spike train

      +
      +
      recording_lengthfloat

      Length of the recording (in seconds)

      +
      +
      H_spikingfloat

      Entropy of the spike times

      +
      +
      +
      +
      +
      +
      if analyse_auto_MI was set to True additionally:
      +
      auto_MIdict

      numpy array of MI values for each delay

      +
      +
      auto_MI_delayslist of int

      list of delays depending on the given auto_MI_bin_sizes and auto_MI_max_delay

      +
      +
      +
      +
      +
      + +
      +
      +remove_subresults_single_process()[source]
      +

      delete results from self from single process

      +
      + +
      + +
      +
      +

      idtxl.estimators_Rudelt module

      +

      Provide HDE estimators.

      +
      +
      +class idtxl.estimators_Rudelt.RudeltAbstractEstimator(settings=None)[source]
      +

      Bases: idtxl.estimator.Estimator

      +

      Abstract class for implementation of nsb and plugin estimators from Rudelt.

      +

      Abstract class for implementation of nsb and plugin estimators, child classes +implement estimators for mutual information (MI) .

      +

      References:

      +
      +
      +
      [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding

      optimization reveals long-lasting history dependence in +neural spiking activity, 2021, PLOS Computational Biology, 17(6)

      +
      +
      +

      [2]: https://github.com/Priesemann-Group/hdestimator

      +
      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +
      +
      Args:
      +
      settingsdict
        +
      • +
        embedding_step_sizefloat [optional]

        Step size delta t (in seconds) with which the window is slid through the data +(default = 0.005).

        +
        +
        +
      • +
      • +
        normalisebool [optional]

        rebase spike times to zero +(default=True)

        +
        +
        +
      • +
      • +
        return_averaged_Rbool [optional]

        If set to True, compute R̂tot as the average over R̂(T ) for T ∈ [T̂D, Tmax ] instead of +R̂tot = R(T̂D ). If set to True, the setting for number_of_bootstraps_R_tot is ignored and +set to 0 +(default=True)

        +
        +
        +
      • +
      +
      +
      +
      +
      +
      +
      +get_median_number_of_spikes_per_bin(raw_symbols)[source]
      +

      Given raw symbols (in which the number of spikes per bin are counted, +ie not necessarily binary quantity), get the median number of spikes +for each bin, among all symbols obtained by the embedding.

      +
      + +
      +
      +get_multiplicities(symbol_counts, alphabet_size)[source]
      +

      Get the multiplicities of some given symbol counts.

      +

      To estimate the entropy of a system, it is only important how +often a symbol/ event occurs (the probability that it occurs), not +what it represents. Therefore, computations can be simplified by +summarizing symbols by their frequency, as represented by the +multiplicities.

      +
      + +
      +
      +get_past_range(number_of_bins_d, first_bin_size, scaling_k)[source]
      +

      Get the past range T of the embedding, based on the parameters d, tau_1 and k.

      +
      + +
      +
      +get_raw_symbols(spike_times, embedding, first_bin_size)[source]
      +

      Get the raw symbols (in which the number of spikes per bin are counted, +ie not necessarily binary quantity), as obtained by applying the +embedding.

      +
      + +
      +
      +get_symbol_counts(symbol_array)[source]
      +

      Count how often symbols occur

      +
      + +
      +
      +get_window_delimiters(number_of_bins_d, scaling_k, first_bin_size)[source]
      +

      Get delimiters of the window, used to describe the embedding. The +window includes both the past embedding and the response.

      +

      The delimiters are times, relative to the first bin, that separate +two consequent bins.

      +
      + +
      +
      +is_analytic_null_estimator()[source]
      +

      Indicate if estimator supports analytic surrogates.

      +

      Return true if the estimator implements estimate_surrogates_analytic() +where data is formatted as per the estimate method for this estimator.

      +
      +
      Returns:

      bool

      +
      +
      +
      + +
      +
      +is_parallel()[source]
      +

      Indicate if estimator supports parallel estimation over chunks.

      +

      Return true if the supports parallel estimation over chunks, where a +chunk is one independent data set.

      +
      +
      Returns:

      bool

      +
      +
      +
      + +
      +
      +symbol_array_to_binary(spikes_in_window, number_of_bins_d)[source]
      +

      Given an array of 1s and 0s, representing spikes and the absence +thereof, read the array as a binary number to obtain a +(base 10) integer.

      +
      + +
      +
      +symbol_binary_to_array(symbol_binary, number_of_bins_d)[source]
      +

      Given a binary representation of a symbol (cf symbol_array_to_binary), +convert it back into its array-representation.

      +
      + +
      + +
      +
      +class idtxl.estimators_Rudelt.RudeltAbstractNSBEstimator(settings=None)[source]
      +

      Bases: idtxl.estimators_Rudelt.RudeltAbstractEstimator

      +

      Abstract class for implementation of NSB estimators from Rudelt.

      +

      Abstract class for implementation of Nemenman-Shafee-Bialek (NSB) +estimators, child classes implement nsb estimators for mutual information +(MI).

      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +

      References:

      +
      +
      +
      [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding

      optimization reveals long-lasting history dependence in +neural spiking activity, 2021, PLOS Computational Biology, 17(6)

      +
      +
      [2]: I. Nemenman, F. Shafee, W. Bialek: Entropy and inference,

      revisited. In T.G. Dietterich, S. Becker, and Z. Ghahramani, +editors, Advances in Neural Information Processing Systems 14, +Cambridge, MA, 2002. MIT Press.

      +
      +
      +
      +
      +
      Args:
      +
      settingsdict
        +
      • +
        embedding_step_sizefloat [optional]

        Step size delta t (in seconds) with which the window is slid through the data +(default = 0.005).

        +
        +
        +
      • +
      • +
        normalisebool [optional]

        rebase spike times to zero +(default=True)

        +
        +
        +
      • +
      • +
        return_averaged_Rbool [optional]

        If set to True, compute R̂tot as the average over R̂(T ) for T ∈ [T̂D, Tmax ] instead of +R̂tot = R(T̂D ). If set to True, the setting for number_of_bootstraps_R_tot is ignored and +set to 0 +(default=True)

        +
        +
        +
      • +
      +
      +
      +
      +
      +
      +
      +H1(beta, mk, K, N)[source]
      +

      Compute the first moment (expectation value) of the entropy H.

      +

      H is the entropy one obtains with a symmetric Dirichlet prior +with concentration parameter beta and a multinomial likelihood.

      +
      + +
      +
      +alpha_ML(mk, K1, N)[source]
      +

      Compute first guess for the beta_MAP (cf get_beta_MAP) parameter +via the posterior of a Dirichlet process.

      +
      + +
      +
      +d2_log_rho(beta, mk, K, N)[source]
      +

      Second derivate of the logarithm of the Dirichlet multinomial likelihood.

      +
      + +
      +
      +d2_log_rho_xi(beta, mk, K, N)[source]
      +

      Second derivative of the logarithm of the nsb (unnormalized) posterior.

      +
      + +
      +
      +d2_xi(beta, K)[source]
      +

      Second derivative of xi(beta) (cf d_xi).

      +
      + +
      +
      +d3_xi(beta, K)[source]
      +

      Third derivative of xi(beta) (cf d_xi).

      +
      + +
      +
      +d_log_rho(beta, mk, K, N)[source]
      +

      First derivate of the logarithm of the Dirichlet multinomial likelihood.

      +
      + +
      +
      +d_log_rho_xi(beta, mk, K, N)[source]
      +

      First derivative of the logarithm of the nsb (unnormalized) posterior.

      +
      + +
      +
      +d_xi(beta, K)[source]
      +

      First derivative of xi(beta).

      +

      xi(beta) is the entropy of the system when no data has been observed. +d_xi is the prior for the nsb estimator

      +
      + +
      +
      +get_beta_MAP(mk, K, N)[source]
      +

      Get the maximum a posteriori (MAP) value for beta.

      +

      Provides the location of the peak, around which we integrate.

      +

      beta_MAP is the value for beta for which the posterior of the +NSB estimator is maximised (or, equivalently, of the logarithm +thereof, as computed here).

      +
      + +
      +
      +get_integration_bounds(mk, K, N)[source]
      +

      Find the integration bounds for the estimator.

      +

      Typically it is a delta-like distribution so it is sufficient +to integrate around this peak. (If not this function is not +called.)

      +
      + +
      +
      +log_likelihood_DP_alpha(a, K1, N)[source]
      +

      Alpha-dependent terms of the log-likelihood of a Dirichlet Process.

      +
      + +
      +
      +nsb_entropy(mk, K, N)[source]
      +

      Estimate the entropy of a system using the NSB estimator.

      +
      +
      Parameters
      +
        +
      • mk – multiplicities

      • +
      • K – number of possible symbols/ state space of the system

      • +
      • N – total number of observed symbols

      • +
      +
      +
      +
      + +
      +
      +rho(beta, mk, K, N)[source]
      +

      rho(beta, data) is the Dirichlet multinomial likelihood.

      +

      rho(beta, data) together with the d_xi(beta) make up +the posterior for the nsb estimator

      +
      + +
      +
      +unnormalized_posterior(beta, mk, K, N)[source]
      +

      The (unnormalized) posterior in the nsb estimator.

      +

      Product of the likelihood rho and the prior d_xi; +the normalizing factor is given by the marginal likelihood

      +
      + +
      + +
      +
      +class idtxl.estimators_Rudelt.RudeltBBCEstimator(settings=None)[source]
      +

      Bases: idtxl.estimators_Rudelt.RudeltAbstractEstimator

      +

      Bayesian bias criterion (BBC) Estimator using NSB and Plugin estimator

      +

      Calculate the mutual information (MI) of one variable depending on its past +using nsb and plugin estimator and check if bias criterion is passed. +See parent class for references.

      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +
      +
      Args:
      +
      settingsdict
        +
      • +
        embedding_step_sizefloat [optional]

        Step size delta t (in seconds) with which the window is slid through the data +(default = 0.005).

        +
        +
        +
      • +
      • +
        normalisebool [optional]

        rebase spike times to zero +(default=True)

        +
        +
        +
      • +
      • +
        return_averaged_Rbool [optional]

        If set to True, compute R̂tot as the average over R̂(T ) for T ∈ [T̂D, Tmax ] instead of +R̂tot = R(T̂D ). If set to True, the setting for number_of_bootstraps_R_tot is ignored and +set to 0 +(default=True)

        +
        +
        +
      • +
      +
      +
      +
      +
      +
      +
      +bayesian_bias_criterion(R_nsb, R_plugin, bbc_tolerance)[source]
      +

      Get whether the Bayesian bias criterion (bbc) is passed.

      +
      +
      Parameters
      +
        +
      • R_nsb – history dependence computed with NSB estimator

      • +
      • R_plugin – history dependence computed with plugin estimator

      • +
      • bbc_tolerance – tolerance for the Bayesian bias criterion

      • +
      +
      +
      +
      + +
      +
      +estimate(symbol_array, past_symbol_array, current_symbol_array, bbc_tolerance=None)[source]
      +

      Calculate the mutual information (MI) of one variable depending on its past +using nsb and plugin estimator and check if bias criterion is passed/

      +
      +
      Args:
      +
      symbol_array1D numpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      past_symbol_arraynumpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      current_symbol_arraynumpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      +
      +
      Returns:
      +
      I (float)

      MI (AIS)

      +
      +
      R (float)

      MI / H_uncond (History dependence)

      +
      +
      bbc_term (float)

      bbc tolerance-independent term of the Bayesian bias +criterion (bbc)

      +
      +
      +
      +
      +
      + +
      +
      +get_bbc_term(R_nsb, R_plugin)[source]
      +

      Get the bbc tolerance-independent term of the Bayesian bias +criterion (bbc).

      +
      +
      Parameters
      +
        +
      • R_nsb – history dependence computed with NSB estimator

      • +
      • R_plugin – history dependence computed with plugin estimator

      • +
      +
      +
      +
      + +
      + +
      +
      +class idtxl.estimators_Rudelt.RudeltNSBEstimatorSymbolsMI(settings=None)[source]
      +

      Bases: idtxl.estimators_Rudelt.RudeltAbstractNSBEstimator

      +

      History dependence NSB estimator

      +

      Calculate the mutual information (MI) of one variable depending on its past +using NSB estimator. See parent class for references.

      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +
      +
      Args:
      +
      settingsdict
        +
      • +
        embedding_step_sizefloat [optional]

        Step size delta t (in seconds) with which the window is slid through the data +(default = 0.005).

        +
        +
        +
      • +
      • +
        normalisebool [optional]

        rebase spike times to zero +(default=True)

        +
        +
        +
      • +
      • +
        return_averaged_Rbool [optional]

        If set to True, compute R̂tot as the average over R̂(T ) for T ∈ [T̂D, Tmax ] instead of +R̂tot = R(T̂D ). If set to True, the setting for number_of_bootstraps_R_tot is ignored and +set to 0 +(default=True)

        +
        +
        +
      • +
      +
      +
      +
      +
      +
      +
      +estimate(symbol_array, past_symbol_array, current_symbol_array)[source]
      +

      Estimate mutual information using NSB estimator.

      +
      +
      Args:
      +
      symbol_array1D numpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      past_symbol_arraynumpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      current_symbol_arraynumpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      +
      +
      Returns:
      +
      I (float)

      MI (AIS)

      +
      +
      R (float)

      MI / H_uncond (History dependence)

      +
      +
      +
      +
      +
      + +
      +
      +nsb_estimator(symbol_counts, past_symbol_counts, alphabet_size, alphabet_size_past, H_uncond)[source]
      +

      Estimate the entropy of a system using the NSB estimator.

      +
      + +
      + +
      +
      +class idtxl.estimators_Rudelt.RudeltPluginEstimatorSymbolsMI(settings=None)[source]
      +

      Bases: idtxl.estimators_Rudelt.RudeltAbstractEstimator

      +

      Plugin History dependence estimator

      +

      Calculate the mutual information (MI) of one variable depending on its past +using plugin estimator. See parent class for references.

      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +
      +
      Args:
      +
      settingsdict
        +
      • +
        embedding_step_sizefloat [optional] - Step size delta t (in seconds) with which the window is slid

        through the data (default = 0.005).

        +
        +
        +
      • +
      • normalise : bool [optional] - rebase spike times to zero (default=True)

      • +
      • return_averaged_R : bool [optional] - rebase spike times to zero (default=True)

      • +
      +
      +
      +
      +
      +
      +
      +estimate(symbol_array, past_symbol_array, current_symbol_array)[source]
      +

      Estimate mutual information using plugin estimator.

      +
      +
      Args:
      +
      symbol_array1D numpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      past_symbol_arraynumpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      current_symbol_arraynumpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      +
      +
      Returns:
      +
      I (float)

      MI (AIS)

      +
      +
      R (float)

      MI / H_uncond (History dependence)

      +
      +
      +
      +
      +
      + +
      +
      +plugin_entropy(mk, N)[source]
      +

      Estimate the entropy of a system using the Plugin estimator.

      +

      (In principle this is the same function as utl.get_shannon_entropy, +only here it is a function of the multiplicities, not the probabilities.)

      +
      +
      Parameters
      +
        +
      • mk – multiplicities

      • +
      • N – total number of observed symbols

      • +
      +
      +
      +
      + +
      +
      +plugin_estimator(symbol_counts, past_symbol_counts, alphabet_size, alphabet_size_past, H_uncond)[source]
      +

      Estimate the entropy of a system using the BBC estimator.

      +
      + +
      + +
      +
      +class idtxl.estimators_Rudelt.RudeltShufflingEstimator(settings=None)[source]
      +

      Bases: idtxl.estimators_Rudelt.RudeltAbstractEstimator

      +

      Estimate the history dependence in a spike train using the shuffling estimator.

      +

      See parent class for references.

      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +
      +
      +estimate(symbol_array)[source]
      +

      Estimate the history dependence in a spike train using the shuffling estimator.

      +
      +
      +
      Args:
      +
      symbol_array1D numpy array

      realisations of symbols based on current and past states. +(first output of get_realisations_symbol from data_spiketimes object)

      +
      +
      +
      +
      +
      +
      +
      Returns:
      +
      I (float)

      MI (AIS)

      +
      +
      R (float)

      MI / H_uncond (History dependence)

      +
      +
      +
      +
      +
      + +
      +
      +get_H0_X_past_cond_X(marginal_probabilities, number_of_bins_d, P_X_uncond)[source]
      +

      Compute H_0(X_past | X), the estimate of the entropy for the past +symbols given a response, under the assumption that activity in +the past contributes independently towards the response.

      +
      + +
      +
      +get_H0_X_past_cond_X_eq_x(marginal_probabilities, number_of_bins_d)[source]
      +

      Compute H_0(X_past | X = x), cf get_H0_X_past_cond_X.

      +
      + +
      +
      +get_H_X_past_cond_X(P_X_uncond, P_X_past_cond_X)[source]
      +

      Compute H(X_past | X), the plug-in estimate of the conditional entropy for the past +symbols, conditioned on the response X, given their probabilities.

      +
      + +
      +
      +get_H_X_past_uncond(P_X_past_uncond)[source]
      +

      Compute H(X_past), the plug-in estimate of the entropy for the past symbols, given +their probabilities.

      +
      + +
      +
      +get_P_X_past_cond_X(past_symbol_counts, number_of_symbols)[source]
      +

      Compute P(X_past | X), the probability of the past activity conditioned +on the response X using the plug-in estimator.

      +
      + +
      +
      +get_P_X_past_uncond(past_symbol_counts, number_of_symbols)[source]
      +

      Compute P(X_past), the probability of the past activity using +the plug-in estimator.

      +
      + +
      +
      +get_P_X_uncond(number_of_symbols)[source]
      +

      Compute P(X), the probability of the current activity using +the plug-in estimator.

      +
      + +
      +
      +get_marginal_frequencies_of_spikes_in_bins(symbol_counts, number_of_bins_d)[source]
      +

      Compute for each past bin 1…d the sum of spikes found in that bin across all +observed symbols.

      +
      + +
      +
      +get_shuffled_symbol_counts(symbol_counts, past_symbol_counts, number_of_bins_d, number_of_symbols)[source]
      +

      Simulate new data by, for each past bin 1…d, permutating the activity +across all observed past_symbols (for a given response X). The marginal +probability of observing a spike given the response is thus preserved for +each past bin.

      +
      + +
      +
      +shuffling_MI(symbol_counts, number_of_bins_d)[source]
      +

      Estimate the mutual information between current and past activity +in a spike train using the shuffling estimator.

      +

      To obtain the shuffling estimate, compute the plug-in estimate and +a correction term to reduce its bias.

      +

      For the plug-in estimate:

      +
        +
      • Extract the past_symbol_counts from the symbol_counts.

      • +
      • I_plugin = H(X_past) - H(X_past | X)

      • +
      +

      Notation:

      +
        +
      • X: current activity, aka response

      • +
      • X_past: past activity

      • +
      • P_X_uncond: P(X)

      • +
      • P_X_past_uncond: P(X_past)

      • +
      • P_X_past_cond_X: P(X_past | X)

      • +
      • H_X_past_uncond: H(X_past)

      • +
      • H_X_past_cond_X: H(X_past | X)

      • +
      • I_plugin: plugin estimate of I(X_past; X)

      • +
      +

      For the correction term:

      +
        +
      • +
        Simulate additional data under the assumption that activity

        in the past contributes independently towards the current activity.

        +
        +
        +
      • +
      • +
        Compute the entropy under the assumptions of the model, which

        due to its simplicity is easy to sample and the estimate unbiased

        +
        +
        +
      • +
      • +
        Compute the entropy using the plug-in estimate, whose bias is

        similar to that of the plug-in estimate on the original data

        +
        +
        +
      • +
      • +
        Compute the correction term as the difference between the

        unbiased and biased terms

        -
        Args:
        -
        settingsdict

        parameters for estimator use and statistics:

        +
        +
      • +
      +

      Notation:

        -
      • cmi_estimator : str - estimator to be used for CMI and MI -calculation (for estimator settings see the documentation in -the estimators_* modules)

      • -
      • max_lag : int - maximum temporal search depth for candidates -in the processes’ past in samples

      • -
      • tau : int [optional] - spacing between candidates in the -sources’ past in samples (default=1)

      • -
      • n_perm_* : int [optional] - number of permutations, where * -can be ‘max_stat’, ‘min_stat’, ‘mi’ (default=500)

      • -
      • alpha_* : float [optional] - critical alpha level for -statistical significance, where * can be ‘max_stat’, -‘min_stat’, ‘mi’ (default=0.05)

      • -
      • add_conditionals : list of tuples | str [optional] - force -the estimator to add these conditionals when estimating TE; -can either be a list of variables, where each variable is -described as (idx process, lag wrt to current value) or can -be a string: ‘faes’ for Faes-Method (see references)

      • -
      • permute_in_time : bool [optional] - force surrogate creation -by shuffling realisations in time instead of shuffling -replications; see documentation of Data.permute_samples() for -further settings (default=False)

      • -
      • verbose : bool [optional] - toggle console output -(default=True)

      • -
      • write_ckp : bool [optional] - enable checkpointing, writes -analysis state to disk every time a variable is selected; -resume crashed analysis using -network_analysis.resume_checkpoint() (default=False)

      • -
      • filename_ckp : str [optional] - checkpoint file name (without -extension) (default=’./idtxl_checkpoint’)

      • +
      • P0_sh_X_past_cond_X: P_0,sh(X_past | X), equiv. to P(X_past | X) +on the shuffled data

      • +
      • H0_X_past_cond_X: H_0(X_past | X), based on the model of independent +contributions

      • +
      • H0_sh_X_past_cond_X: H_0,sh(X_past | X), based on

      • +
      • P0_sh_X_past_cond_X, ie the plug-in estimate

      • +
      • I_corr: the correction term to reduce the bias of I_plugin

      +
      +
      Args:
      +
      symbol_countsiterable

      the activity of a spike train is embedded into symbols, +whose occurrences are counted (cf emb.get_symbol_counts)

      -
      dataData instance

      raw data for analysis

      -
      -
      processint

      index of process

      -
      -
      -
      -
      Returns:
      -
      ResultsSingleProcessAnalysis instance

      results of AIS estimation, see documentation of -ResultsSingleProcessAnalysis()

      +
      number_of_bins_dint

      the number of bins of the embedding

      @@ -2393,13 +3526,13 @@

      Submodules +

      +

      idtxl.estimators_jidt module

      Provide JIDT estimators.

      -
      -class idtxl.estimators_jidt.JidtDiscrete(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscrete(settings)[source]

      Bases: idtxl.estimators_jidt.JidtEstimator

      Abstract class for implementation of discrete JIDT-estimators.

      Abstract class for implementation of plug-in JIDT-estimators for discrete @@ -2432,8 +3565,8 @@

      Submodules -
      -estimate_surrogates_analytic(n_perm=200, **data)[source]
      +
      +estimate_surrogates_analytic(n_perm=200, **data)[source]

      Return estimate of the analytical surrogate distribution.

      This method must be implemented because this class’ is_analytic_null_estimator() method returns true.

      @@ -2458,8 +3591,8 @@

      Submodules -
      -abstract get_analytic_distribution(**data)[source]
      +
      +abstract get_analytic_distribution(**data)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -2481,8 +3614,8 @@

      Submodules -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -2495,8 +3628,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtDiscreteAIS(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscreteAIS(settings)[source]

      Bases: idtxl.estimators_jidt.JidtDiscrete

      Calculate AIS with JIDT’s discrete-variable implementation.

      Calculate the active information storage (AIS) for one process. Call JIDT @@ -2527,8 +3660,8 @@

      Submodules -
      -estimate(process, return_calc=False)[source]
      +
      +estimate(process, return_calc=False)[source]

      Estimate active information storage.

      Args:
      @@ -2560,8 +3693,8 @@

      Submodules -
      -get_analytic_distribution(process)[source]
      +
      +get_analytic_distribution(process)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -2586,8 +3719,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtDiscreteCMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscreteCMI(settings=None)[source]

      Bases: idtxl.estimators_jidt.JidtDiscrete

      Calculate CMI with JIDT’s implementation for discrete variables.

      Calculate the conditional mutual information between two variables given @@ -2622,8 +3755,8 @@

      Submodules -
      -estimate(var1, var2, conditional=None, return_calc=False)[source]
      +
      +estimate(var1, var2, conditional=None, return_calc=False)[source]

      Estimate conditional mutual information.

      Args:
      @@ -2660,8 +3793,8 @@

      Submodules -
      -get_analytic_distribution(var1, var2, conditional=None)[source]
      +
      +get_analytic_distribution(var1, var2, conditional=None)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -2691,8 +3824,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtDiscreteMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscreteMI(settings=None)[source]

      Bases: idtxl.estimators_jidt.JidtDiscrete

      Calculate MI with JIDT’s discrete-variable implementation.

      Calculate the mutual information (MI) between two variables. Call JIDT via @@ -2726,8 +3859,8 @@

      Submodules -
      -estimate(var1, var2, return_calc=False)[source]
      +
      +estimate(var1, var2, return_calc=False)[source]

      Estimate mutual information.

      Args:
      @@ -2761,8 +3894,8 @@

      Submodules -
      -get_analytic_distribution(var1, var2)[source]
      +
      +get_analytic_distribution(var1, var2)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -2789,8 +3922,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtDiscreteTE(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscreteTE(settings)[source]

      Bases: idtxl.estimators_jidt.JidtDiscrete

      Calculate TE with JIDT’s implementation for discrete variables.

      Calculate the transfer entropy between two time series processes. @@ -2836,8 +3969,8 @@

      Submodules -
      -estimate(source, target, return_calc=False)[source]
      +
      +estimate(source, target, return_calc=False)[source]

      Estimate transfer entropy from a source to a target variable.

      Args:
      @@ -2871,8 +4004,8 @@

      Submodules -
      -get_analytic_distribution(source, target)[source]
      +
      +get_analytic_distribution(source, target)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -2899,8 +4032,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtEstimator(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtEstimator(settings=None)[source]

      Bases: idtxl.estimator.Estimator

      Abstract class for implementation of JIDT estimators.

      Abstract class for implementation of JIDT estimators, child classes @@ -2937,8 +4070,8 @@

      Submodules -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -2951,8 +4084,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtGaussian(CalcClass, settings)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussian(CalcClass, settings)[source]

      Bases: idtxl.estimators_jidt.JidtEstimator

      Abstract class for implementation of JIDT Gaussian-estimators.

      Abstract class for implementation of JIDT Gaussian-estimators, child @@ -2979,10 +4112,10 @@

      Submodules -
      -estimate_surrogates_analytic(n_perm=200, **data)[source]
      -

      Estimate the surrogate distribution analytically. -This method must be implemented because this class’ +

      +estimate_surrogates_analytic(n_perm=200, **data)[source]
      +

      Estimate the surrogate distribution analytically.

      +

      This method must be implemented because this class’ is_analytic_null_estimator() method returns true

      Args:
      @@ -3005,8 +4138,8 @@

      Submodules -
      -get_analytic_distribution(**data)[source]
      +
      +get_analytic_distribution(**data)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -3028,8 +4161,8 @@

      Submodules -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -3042,8 +4175,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtGaussianAIS(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussianAIS(settings)[source]

      Bases: idtxl.estimators_jidt.JidtGaussian

      Calculate active information storage with JIDT’s Gaussian implementation.

      Calculate active information storage (AIS) for some process using JIDT’s @@ -3078,8 +4211,8 @@

      Submodules -
      -estimate(process)[source]
      +
      +estimate(process)[source]

      Estimate active information storage.

      Args:
      @@ -3101,8 +4234,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtGaussianCMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussianCMI(settings=None)[source]

      Bases: idtxl.estimators_jidt.JidtGaussian

      Calculate conditional mutual infor with JIDT’s Gaussian implementation.

      Computes the differential conditional mutual information of two @@ -3134,8 +4267,8 @@

      Submodules -
      -estimate(var1, var2, conditional=None)[source]
      +
      +estimate(var1, var2, conditional=None)[source]

      Estimate conditional mutual information.

      Args:
      @@ -3160,8 +4293,8 @@

      Submodules -
      -get_analytic_distribution(var1, var2, conditional=None)[source]
      +
      +get_analytic_distribution(var1, var2, conditional=None)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -3190,8 +4323,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtGaussianMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussianMI(settings=None)[source]

      Bases: idtxl.estimators_jidt.JidtGaussian

      Calculate mutual information with JIDT’s Gaussian implementation.

      Calculate the mutual information between two variables. Call JIDT via jpype @@ -3219,8 +4352,8 @@

      Submodules -
      -estimate(var1, var2)[source]
      +
      +estimate(var1, var2)[source]

      Estimate mutual information.

      Args:
      @@ -3244,8 +4377,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtGaussianTE(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussianTE(settings)[source]

      Bases: idtxl.estimators_jidt.JidtGaussian

      Calculate transfer entropy with JIDT’s Gaussian implementation.

      Calculate transfer entropy between a source and a target variable using @@ -3289,8 +4422,8 @@

      Submodules -
      -estimate(source, target)[source]
      +
      +estimate(source, target)[source]

      Estimate transfer entropy from a source to a target variable.

      Args:
      @@ -3314,8 +4447,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtKraskov(CalcClass, settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskov(CalcClass, settings=None)[source]

      Bases: idtxl.estimators_jidt.JidtEstimator

      Abstract class for implementation of JIDT Kraskov-estimators.

      Abstract class for implementation of JIDT Kraskov-estimators, child classes @@ -3356,8 +4489,8 @@

      Submodules -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -3370,8 +4503,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtKraskovAIS(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskovAIS(settings)[source]

      Bases: idtxl.estimators_jidt.JidtKraskov

      Calculate active information storage with JIDT’s Kraskov implementation.

      Calculate active information storage (AIS) for some process using JIDT’s @@ -3418,8 +4551,8 @@

      Submodules -
      -estimate(process)[source]
      +
      +estimate(process)[source]

      Estimate active information storage.

      Args:
      @@ -3441,8 +4574,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtKraskovCMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskovCMI(settings=None)[source]

      Bases: idtxl.estimators_jidt.JidtKraskov

      Calculate conditional mutual inform with JIDT’s Kraskov implementation.

      Calculate the conditional mutual information (CMI) between three variables. @@ -3484,8 +4617,8 @@

      Submodules -
      -estimate(var1, var2, conditional=None)[source]
      +
      +estimate(var1, var2, conditional=None)[source]

      Estimate conditional mutual information.

      Args:
      @@ -3512,8 +4645,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtKraskovMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskovMI(settings=None)[source]

      Bases: idtxl.estimators_jidt.JidtKraskov

      Calculate mutual information with JIDT’s Kraskov implementation.

      Calculate the mutual information between two variables. Call JIDT via jpype @@ -3553,8 +4686,8 @@

      Submodules -
      -estimate(var1, var2)[source]
      +
      +estimate(var1, var2)[source]

      Estimate mutual information.

      Args:
      @@ -3578,8 +4711,8 @@

      Submodules -
      -class idtxl.estimators_jidt.JidtKraskovTE(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskovTE(settings)[source]

      Bases: idtxl.estimators_jidt.JidtKraskov

      Calculate transfer entropy with JIDT’s Kraskov implementation.

      Calculate transfer entropy between a source and a target variable using @@ -3625,8 +4758,8 @@

      Submodules -
      -estimate(source, target)[source]
      +
      +estimate(source, target)[source]

      Estimate transfer entropy from a source to a target variable.

      Args:
      @@ -3650,8 +4783,8 @@

      Submodules -
      -idtxl.estimators_jidt.common_estimate_surrogates_analytic(estimator, n_perm=200, **data)[source]
      +
      +idtxl.estimators_jidt.common_estimate_surrogates_analytic(estimator, n_perm=200, **data)[source]

      Estimate the surrogate distribution analytically for JidtEstimator.

      Estimate the surrogate distribution analytically for a JidtEstimator which is_analytic_null_estimator(), by sampling estimates at random @@ -3677,12 +4810,12 @@

      Submodules +

      +

      idtxl.estimators_opencl module

      -
      -class idtxl.estimators_opencl.OpenCLKraskov(settings=None)[source]
      +
      +class idtxl.estimators_opencl.OpenCLKraskov(settings=None)[source]

      Bases: idtxl.estimator.Estimator

      Abstract class for implementation of OpenCL estimators.

      Abstract class for implementation of OpenCL estimators, child classes @@ -3735,8 +4868,8 @@

      Submodules -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -3747,8 +4880,8 @@

      Submodules -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -3761,8 +4894,8 @@

      Submodules -
      -class idtxl.estimators_opencl.OpenCLKraskovCMI(settings=None)[source]
      +
      +class idtxl.estimators_opencl.OpenCLKraskovCMI(settings=None)[source]

      Bases: idtxl.estimators_opencl.OpenCLKraskov

      Calculate conditional mutual inform with OpenCL Kraskov implementation.

      Calculate the conditional mutual information (CMI) between three variables @@ -3795,8 +4928,8 @@

      Submodules -
      -estimate(var1, var2, conditional=None, n_chunks=1)[source]
      +
      +estimate(var1, var2, conditional=None, n_chunks=1)[source]

      Estimate conditional mutual information.

      If conditional is None, the mutual information between var1 and var2 is calculated.

      @@ -3831,8 +4964,8 @@

      Submodules -
      -class idtxl.estimators_opencl.OpenCLKraskovMI(settings=None)[source]
      +
      +class idtxl.estimators_opencl.OpenCLKraskovMI(settings=None)[source]

      Bases: idtxl.estimators_opencl.OpenCLKraskov

      Calculate mutual information with OpenCL Kraskov implementation.

      Calculate the mutual information (MI) between two variables using OpenCL @@ -3865,8 +4998,8 @@

      Submodules -
      -estimate(var1, var2, n_chunks=1)[source]
      +
      +estimate(var1, var2, n_chunks=1)[source]

      Estimate mutual information.

      Args:
      @@ -3896,8 +5029,8 @@

      Submodules +

      +

      idtxl.estimators_multivariate_pid module

      Multivariate Partical information decomposition for discrete random variables.

      This module provides an estimator for multivariate partial information @@ -3908,8 +5041,8 @@

      Submoduleshttp://arxiv.org/abs/2002.03356

      -
      -class idtxl.estimators_multivariate_pid.SxPID(settings)[source]
      +
      +class idtxl.estimators_multivariate_pid.SxPID(settings)[source]

      Bases: idtxl.estimator.Estimator

      Estimate partial information decomposition for multiple inputs.

      Implementation of the multivariate partial information decomposition (PID) @@ -3939,8 +5072,8 @@

      Submodules -
      -estimate(s, t)[source]
      +
      +estimate(s, t)[source]
      Args:
      slist of numpy arrays

      1D arrays containing realizations of a discrete random variable

      @@ -3967,8 +5100,8 @@

      Submodules -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -3979,8 +5112,8 @@

      Submodules -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -3992,8 +5125,8 @@

      Submodules +

      +

      idtxl.estimators_pid module

      Partical information decomposition for discrete random variables.

      This module provides an estimator for partial information decomposition @@ -4001,8 +5134,8 @@

      Submoduleshttp://doi.org/10.3390/e16042161

      -
      -class idtxl.estimators_pid.SydneyPID(settings)[source]
      +
      +class idtxl.estimators_pid.SydneyPID(settings)[source]

      Bases: idtxl.estimator.Estimator

      Estimate partial information decomposition of discrete variables.

      Fast implementation of the BROJA partial information decomposition (PID) @@ -4062,8 +5195,8 @@

      Submodules -
      -estimate(s1, s2, t)[source]
      +
      +estimate(s1, s2, t)[source]
      Args:
      s1numpy array

      1D array containing realizations of a discrete random variable

      @@ -4084,8 +5217,8 @@

      Submodules -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -4096,8 +5229,8 @@

      Submodules -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -4110,8 +5243,8 @@

      Submodules -
      -class idtxl.estimators_pid.TartuPID(settings)[source]
      +
      +class idtxl.estimators_pid.TartuPID(settings)[source]

      Bases: idtxl.estimator.Estimator

      Estimate partial information decomposition for two inputs and one output

      Implementation of the partial information decomposition (PID) estimator for @@ -4144,8 +5277,8 @@

      Submodules -
      -estimate(s1, s2, t)[source]
      +
      +estimate(s1, s2, t)[source]
      Args:
      s1numpy array

      1D array containing realizations of a discrete random variable

      @@ -4165,8 +5298,8 @@

      Submodules -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -4177,8 +5310,8 @@

      Submodules -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -4190,132 +5323,13 @@

      Submodules -

      idtxl.idtxl_import module

      -

      Import external file formats into IDTxl.

      -

      Provide functions to import the following into IDTxl:

      -
      -
        -
      • mat-files (version>7.3, hdf5)

      • -
      • FieldTrip-style mat-files (version>7.3, hdf5)

      • -
      -
      -

      Matlab supports hdf5 only for files saved as version 7.3 or higher: -https://au.mathworks.com/help/matlab/ref/save.html#inputarg_version

      -

      Creates a numpy array usable as input to IDTxl.

      -
      -
      Methods:

      ft_trial_2_numpyarray(file_name, ft_struct_name) -matarray2idtxlconverter(file_name, array_name, order) = takes a file_name,

      -
      -

      the name of the array variable (array_name) inside, -and the order of sensor axis, time axisand (CHECK THIS!!) -repetition axis (as a list)

      -
      -
      -
      Note:

      Written for Python 3.4+

      -
      -
      -

      Created on Wed Mar 19 12:34:36 2014

      -

      @author: Michael Wibral

      -
      -
      -idtxl.idtxl_import.import_fieldtrip(file_name, ft_struct_name, file_version, normalise=True)[source]
      -

      Convert FieldTrip-style MATLAB-file into an IDTxl Data object.

      -

      Import a MATLAB structure with fields “trial” (data), “label” (channel -labels), “time” (time stamps for data samples), and “fsample” (sampling -rate). This structure is the standard file format in the MATLAB toolbox -FieldTrip and commonly use to represent neurophysiological data (see also -http://www.fieldtriptoolbox.org/reference/ft_datatype_raw). The data is -returned as a IDTxl Data() object.

      -

      The structure is assumed to be saved as a matlab hdf5 file (“-v7.3’ or -higher, .mat) with a SINGLE FieldTrip data structure inside.

      -
      -
      Args:
      -
      file_namestring

      full (matlab) file_name on disk

      -
      -
      ft_struct_namestring

      variable name of the MATLAB structure that is in FieldTrip format -(autodetect will hopefully be possible later …)

      -
      -
      file_versionstring

      version of the file, e.g. ‘v7.3’ for MATLAB’s 7.3 format

      -
      -
      normalisebool [optional]

      normalise data after import (default=True)

      -
      -
      -
      -
      Returns:
      -
      Data() instance

      instance of IDTxl Data object, containing data from the ‘trial’ -field

      -
      -
      list of strings

      list of channel labels, corresponding to the ‘label’ field

      -
      -
      numpy array

      time stamps for samples, corresponding to one entry in the ‘time’ -field

      -
      -
      int

      sampling rate, corresponding to the ‘fsample’ field

      -
      -
      -
      -
      -

      @author: Michael Wibral

      -
      - -
      -
      -idtxl.idtxl_import.import_matarray(file_name, array_name, file_version, dim_order, normalise=True)[source]
      -

      Read Matlab hdf5 file into IDTxl.

      -

      reads a matlab hdf5 file (“-v7.3’ or higher, .mat) with a SINGLE -array inside and returns a numpy array with dimensions that -are channel x time x trials, using np.swapaxes where necessary

      -
      -
      Note:

      The import function squeezes the loaded mat-file, i.e., any singleton -dimension will be removed. Hence do not enter singleton dimension into -the ‘dim_order’, e.g., don’t pass dim_order=’ps’ but dim_order=’s‘ if -you want to load a 1D-array where entries represent samples recorded -from a single channel.

      -
      -
      Args:
      -
      file_namestring

      full (matlab) file_name on disk

      -
      -
      array_namestring

      variable name of the MATLAB structure to be read

      -
      -
      file_versionstring

      version of the file, e.g. ‘v7.3’ for MATLAB’s 7.3 format, currently -versions ‘v4’, ‘v6’, ‘v7’, and ‘v7’ are supported

      -
      -
      dim_orderstring

      order of dimensions, accepts any combination of the characters -‘p’, ‘s’, and ‘r’ for processes, samples, and replications; must -have the same length as the data dimensionality, e.g., ‘ps’ for a -two-dimensional array of data from several processes over time

      -
      -
      normalisebool [optional]

      normalise data after import (default=True)

      -
      -
      -
      -
      Returns:
      -
      Data() instance

      instance of IDTxl Data object, containing data from the ‘trial’ -field

      -
      -
      list of strings

      list of channel labels, corresponding to the ‘label’ field

      -
      -
      numpy array

      time stamps for samples, corresponding to one entry in the ‘time’ -field

      -
      -
      int

      sampling rate, corresponding to the ‘fsample’ field

      -
      -
      -
      -
      -

      Created on Wed Mar 19 12:34:36 2014

      -

      @author: Michael Wibral

      -
      - -

      -
      + +

      idtxl.idtxl_exceptions module

      Provide error handling and warnings.

      -
      -exception idtxl.idtxl_exceptions.AlgorithmExhaustedError(message)[source]
      +
      +exception idtxl.idtxl_exceptions.AlgorithmExhaustedError(message)[source]

      Bases: Exception

      Exception raised to signal that the estimators can no longer be used for this particular target (e.g. because of memory errors in high @@ -4327,14 +5341,14 @@

      Submodules -
      -exception idtxl.idtxl_exceptions.BROJA_2PID_Exception[source]
      +
      +exception idtxl.idtxl_exceptions.BROJA_2PID_Exception[source]

      Bases: Exception

      -
      -exception idtxl.idtxl_exceptions.JidtOutOfMemoryError(message)[source]
      +
      +exception idtxl.idtxl_exceptions.JidtOutOfMemoryError(message)[source]

      Bases: idtxl.idtxl_exceptions.AlgorithmExhaustedError

      Exception raised to signal a Java OutOfMemoryException.

      It is a child class of AlgorithmExhaustedError.

      @@ -4345,20 +5359,20 @@

      Submodules -
      -idtxl.idtxl_exceptions.package_missing(err, message)[source]
      +
      +idtxl.idtxl_exceptions.package_missing(err, message)[source]

      Report a missing optional package upon import.

      -
      -
      + +

      idtxl.idtxl_io module

      Provide I/O functionality.

      Provide functions to load and save IDTxl data, provide import functions (e.g., mat-files, FieldTrip) and export functions (e.g., networkx, BrainNet Viewer).

      -
      -idtxl.idtxl_io.export_brain_net_viewer(adjacency_matrix, mni_coord, file_name, **kwargs)[source]
      +
      +idtxl.idtxl_io.export_brain_net_viewer(adjacency_matrix, mni_coord, file_name, **kwargs)[source]

      Export network to BrainNet Viewer.

      Export networks to BrainNet Viewer (project home page: http://www.nitrc.org/projects/bnv/). BrainNet Viewer is a MATLAB @@ -4399,8 +5413,8 @@

      Submodules -
      -idtxl.idtxl_io.export_networkx_graph(adjacency_matrix, weights)[source]
      +
      +idtxl.idtxl_io.export_networkx_graph(adjacency_matrix, weights)[source]

      Export networkx graph object for an inferred network.

      Export a weighted, directed graph object from the network of inferred (multivariate) interactions (e.g., multivariate TE), using the networkx @@ -4424,8 +5438,8 @@

      Submodules -
      -idtxl.idtxl_io.export_networkx_source_graph(results, target, sign_sources=True, fdr=True)[source]
      +
      +idtxl.idtxl_io.export_networkx_source_graph(results, target, sign_sources=True, fdr=True)[source]

      Export graph object of source variables for a single target.

      Export graph object from the network of (multivariate) interactions (e.g., multivariate TE) between single source variables and a target process using @@ -4455,8 +5469,8 @@

      Submodules -
      -idtxl.idtxl_io.import_fieldtrip(file_name, ft_struct_name, file_version, normalise=True)[source]
      +
      +idtxl.idtxl_io.import_fieldtrip(file_name, ft_struct_name, file_version, normalise=True)[source]

      Convert FieldTrip-style MATLAB-file into an IDTxl Data object.

      Import a MATLAB structure with fields “trial” (data), “label” (channel labels), “time” (time stamps for data samples), and “fsample” (sampling @@ -4496,15 +5510,15 @@

      Submodules -
      -idtxl.idtxl_io.import_matarray(file_name, array_name, file_version, dim_order, normalise=True)[source]
      +
      +idtxl.idtxl_io.import_matarray(file_name, array_name, file_version, dim_order, normalise=True)[source]

      Read Matlab hdf5 file into IDTxl.

      reads a matlab hdf5 file (“-v7.3’ or higher, .mat) or non-hdf5 files with a SINGLE array inside and returns an IDTxl Data() object.

      Note:

      The import function squeezes the loaded mat-file, i.e., any singleton dimension will be removed. Hence do not enter singleton dimension into -the ‘dim_order’, e.g., don’t pass dim_order=’ps’ but dim_order=’s‘ if +the ‘dim_order’, e.g., don’t pass dim_order=’ps’ but dim_order=’s’ if you want to load a 1D-array where entries represent samples recorded from a single channel.

      @@ -4535,8 +5549,8 @@

      Submodules -
      -idtxl.idtxl_io.load_json(file_path)[source]
      +
      +idtxl.idtxl_io.load_json(file_path)[source]

      Load dictionary saved as JSON file from disk.

      Args:
      @@ -4554,14 +5568,14 @@

      Submodules -
      -idtxl.idtxl_io.load_pickle(name)[source]
      +
      +idtxl.idtxl_io.load_pickle(name)[source]

      Load objects that have been saved using Python’s pickle module.

      -
      -idtxl.idtxl_io.save_json(d, file_path)[source]
      +
      +idtxl.idtxl_io.save_json(d, file_path)[source]

      Save dictionary to disk as JSON file.

      Writes dictionary to disk at the specified file path.

      @@ -4578,8 +5592,8 @@

      Submodules -
      -idtxl.idtxl_io.save_pickle(obj, name)[source]
      +
      +idtxl.idtxl_io.save_pickle(obj, name)[source]

      Save objects using Python’s pickle module.

      Note:

      pickle.HIGHEST_PROTOCOL is a binary format, which may be inconvenient, @@ -4588,31 +5602,31 @@

      Submodules +

      +

      idtxl.idtxl_utils module

      Provide IDTxl utility functions.

      -
      -idtxl.idtxl_utils.argsort_descending(a)[source]
      +
      +idtxl.idtxl_utils.argsort_descending(a)[source]

      Sort array in descending order and return sortind indices.

      -
      -idtxl.idtxl_utils.autocorrelation(x)[source]
      +
      +idtxl.idtxl_utils.autocorrelation(x)[source]

      Calculate autocorrelation of a vector.

      -
      -idtxl.idtxl_utils.calculate_mi(corr)[source]
      +
      +idtxl.idtxl_utils.calculate_mi(corr)[source]

      Calculate mutual information from correlation coefficient.

      -
      -idtxl.idtxl_utils.combine_discrete_dimensions(a, numBins)[source]
      +
      +idtxl.idtxl_utils.combine_discrete_dimensions(a, numBins)[source]

      Combine multi-dimensional discrete variable into a single dimension.

      Combine all dimensions for a discrete variable down into a single dimensional value for each sample. This is done basically by multiplying @@ -4638,8 +5652,8 @@

      Submodules -
      -idtxl.idtxl_utils.conflicting_entries(dict_1, dict_2)[source]
      +
      +idtxl.idtxl_utils.conflicting_entries(dict_1, dict_2)[source]

      Test two dictionaries for unequal entries.

      Note that only keys that are present in both dicts are compared. If one dictionary contains an entry not present in the other dictionary, the @@ -4647,8 +5661,8 @@

      Submodules -
      -idtxl.idtxl_utils.discretise(a, numBins)[source]
      +
      +idtxl.idtxl_utils.discretise(a, numBins)[source]

      Discretise continuous data.

      Discretise continuous data into discrete values (with 0 as lowest) by evenly partitioning the range of the data, one dimension at a time. @@ -4672,8 +5686,8 @@

      Submodules -
      -idtxl.idtxl_utils.discretise_max_ent(a, numBins)[source]
      +
      +idtxl.idtxl_utils.discretise_max_ent(a, numBins)[source]

      Discretise continuous data using maximum entropy partitioning.

      Discretise continuous data into discrete values (with 0 as lowest) by making a maximum entropy partitioning, one dimension at a time. Adapted @@ -4697,20 +5711,20 @@

      Submodules -
      -idtxl.idtxl_utils.equal_dicts(dict_1, dict_2)[source]
      +
      +idtxl.idtxl_utils.equal_dicts(dict_1, dict_2)[source]

      Test two dictionaries for equality.

      -
      -idtxl.idtxl_utils.print_dict(d, indent=4)[source]
      +
      +idtxl.idtxl_utils.print_dict(d, indent=4)[source]

      Use Python’s pretty printer to print dictionaries to the console.

      -
      -idtxl.idtxl_utils.remove_column(a, j)[source]
      +
      +idtxl.idtxl_utils.remove_column(a, j)[source]

      Remove a column from a numpy array.

      This is faster than logical indexing (‘25 times faster’), because it does not make copies, see @@ -4727,8 +5741,8 @@

      Submodules -
      -idtxl.idtxl_utils.remove_row(a, i)[source]
      +
      +idtxl.idtxl_utils.remove_row(a, i)[source]

      Remove a row from a numpy array.

      This is faster than logical indexing (‘25 times faster’), because it does not make copies, see @@ -4745,8 +5759,8 @@

      Submodules -
      -idtxl.idtxl_utils.separate_arrays(idx_all, idx_single, a)[source]
      +
      +idtxl.idtxl_utils.separate_arrays(idx_all, idx_single, a)[source]

      Separate a single column from all other columns in a 2D-array.

      Return the separated single column and the remaining columns of a 2D- array.

      @@ -4773,14 +5787,14 @@

      Submodules -
      -idtxl.idtxl_utils.sort_descending(a)[source]
      +
      +idtxl.idtxl_utils.sort_descending(a)[source]

      Sort array in descending order.

      -
      -idtxl.idtxl_utils.standardise(a, dimension=0, df=1)[source]
      +
      +idtxl.idtxl_utils.standardise(a, dimension=0, df=1)[source]

      Z-standardise a numpy array along a given dimension.

      Standardise array along the axis defined in dimension using the denominator (N - df) for the calculation of the standard deviation.

      @@ -4803,8 +5817,8 @@

      Submodules -
      -idtxl.idtxl_utils.swap_chars(s, i_1, i_2)[source]
      +
      +idtxl.idtxl_utils.swap_chars(s, i_1, i_2)[source]

      Swap to characters in a string.

      Example:
      >>> print(swap_chars('heLlotHere', 2, 6))
      @@ -4815,25 +5829,25 @@ 

      Submodules +

      +

      idtxl.network_analysis module

      Parent class for network inference and network comparison.

      -
      -class idtxl.network_analysis.NetworkAnalysis[source]
      +
      +class idtxl.network_analysis.NetworkAnalysis[source]

      Bases: object

      Provide an analysis setup for network inference or comparison.

      The class provides routines to check user input and set defaults.

      -
      -
      -property current_value
      +
      +
      +property current_value

      Get index of the current_value.

      -
      -resume_checkpoint(file_path)[source]
      +
      +resume_checkpoint(file_path)[source]

      Resume analysis from a checkpoint saved to disk.

      Args:
      @@ -4844,33 +5858,33 @@

      Submodules -
      -property selected_vars_full
      +
      +
      +property selected_vars_full

      List of indices of the full conditional set.

      -
      -
      -property selected_vars_sources
      +
      +
      +property selected_vars_sources

      List of indices of source samples in the conditional set.

      -
      -
      -property selected_vars_target
      +
      +
      +property selected_vars_target

      List of indices of target samples in the conditional set.

      -
      -
      + +

      idtxl.network_inference module

      Parent class for all network inference.

      -
      -class idtxl.network_inference.NetworkInference[source]
      +
      +class idtxl.network_inference.NetworkInference[source]

      Bases: idtxl.network_analysis.NetworkAnalysis

      Parent class for network inference algorithms.

      Hold variables that are relevant for network inference using for example @@ -4896,50 +5910,50 @@

      Submodules -
      -class idtxl.network_inference.NetworkInferenceBivariate[source]
      +
      +class idtxl.network_inference.NetworkInferenceBivariate[source]

      Bases: idtxl.network_inference.NetworkInference

      Parent class for bivariate network inference algorithms.

      -
      -class idtxl.network_inference.NetworkInferenceMI[source]
      +
      +class idtxl.network_inference.NetworkInferenceMI[source]

      Bases: idtxl.network_inference.NetworkInference

      Parent class for mutual information network inference algorithms.

      -
      -class idtxl.network_inference.NetworkInferenceMultivariate[source]
      +
      +class idtxl.network_inference.NetworkInferenceMultivariate[source]

      Bases: idtxl.network_inference.NetworkInference

      Parent class for multivariate network inference algorithms.

      -
      -class idtxl.network_inference.NetworkInferenceTE[source]
      +
      +class idtxl.network_inference.NetworkInferenceTE[source]

      Bases: idtxl.network_inference.NetworkInference

      Parent class for transfer entropy network inference algorithms.

      -
      -
      + +

      idtxl.single_process_analysis module

      Parent class for analysis of single processes in the network.

      -
      -class idtxl.single_process_analysis.SingleProcessAnalysis[source]
      +
      +class idtxl.single_process_analysis.SingleProcessAnalysis[source]

      Bases: idtxl.network_analysis.NetworkAnalysis

      -
      -
      + +

      idtxl.network_comparison module

      Perform inference statistics on groups of data.

      -
      -class idtxl.network_comparison.NetworkComparison[source]
      +
      +class idtxl.network_comparison.NetworkComparison[source]

      Bases: idtxl.network_analysis.NetworkAnalysis

      Set up network comparison between two experimental conditions.

      The class provides methods for the comparison of networks inferred from @@ -4985,8 +5999,8 @@

      Submodules - +

      Calculate the information transfer for whole links into a target.

      Calculate the information transfer for whole links as the joint information transfer from all variables selected for a single source @@ -5016,8 +6030,8 @@

      Submodules -
      -compare_between(settings, network_set_a, network_set_b, data_set_a, data_set_b)[source]
      +
      +compare_between(settings, network_set_a, network_set_b, data_set_a, data_set_b)[source]

      Compare networks inferred under two conditions between subjects.

      Compare two sets of networks inferred from two sets of data recorded under different experimental conditions within multiple subjects, i.e., @@ -5050,8 +6064,8 @@

      Submodules - +

      Compare two links within the same network.

      Compare two links within the same network. Check if information transfer is different from information transfer in a second link.

      @@ -5100,8 +6114,8 @@

      Submodules -
      -compare_within(settings, network_a, network_b, data_a, data_b)[source]
      +
      +compare_within(settings, network_a, network_b, data_a, data_b)[source]

      Compare networks inferred under two conditions within one subject.

      Compare two networks inferred from data recorded under two different experimental conditions within one subject (units of observations are @@ -5150,30 +6164,30 @@

      Submodules +

      +

      idtxl.results module

      Provide results class for IDTxl network analysis.

      -
      -class idtxl.results.AdjacencyMatrix(n_nodes, weight_type)[source]
      +
      +class idtxl.results.AdjacencyMatrix(n_nodes, weight_type)[source]

      Bases: object

      Adjacency matrix representing inferred networks.

      -
      -add_edge(i, j, weight)[source]
      +
      +add_edge(i, j, weight)[source]

      Add weighted edge (i, j) to adjacency matrix.

      -
      -add_edge_list(i_list, j_list, weights)[source]
      +
      +add_edge_list(i_list, j_list, weights)[source]

      Add multiple weighted edges (i, j) to adjacency matrix.

      -
      -get_edge_list()[source]
      +
      +get_edge_list()[source]

      Return list of weighted edges.

      Returns
      @@ -5185,33 +6199,33 @@

      Submodules -
      -n_edges()[source]
      +
      +n_edges()[source]

      -
      -n_nodes()[source]
      +
      +n_nodes()[source]

      Return number of nodes.

      -
      -print_matrix()[source]
      +
      +print_matrix()[source]

      Print weight and edge matrix.

      -
      -class idtxl.results.DotDict[source]
      +
      +class idtxl.results.DotDict[source]

      Bases: dict

      Dictionary with dot-notation access to values.

      Provides the same functionality as a regular dict, but also allows accessing values using dot-notation.

      Example:

      -
      >>> from idtxl.results import DotDict
      +
      >>> from idtxl.results import DotDict
       >>> d = DotDict({'a': 1, 'b': 2})
       >>> d.a
       >>> # Out: 1
      @@ -5222,8 +6236,8 @@ 

      Submodules -
      -class idtxl.results.Results(n_nodes, n_realisations, normalised)[source]
      +
      +class idtxl.results.Results(n_nodes, n_realisations, normalised)[source]

      Bases: object

      Parent class for results of network analysis algorithms.

      Provide a container for results of network analysis algorithms, e.g., @@ -5250,8 +6264,8 @@

      Submodules -
      -combine_results(*results)[source]
      +
      +combine_results(*results)[source]

      Combine multiple (partial) results objects.

      Combine a list of partial network analysis results into a single results object (e.g., results from analysis parallelized over @@ -5283,8 +6297,8 @@

      Submodules -
      -class idtxl.results.ResultsMultivariatePID(n_nodes, n_realisations, normalised)[source]
      +
      +class idtxl.results.ResultsMultivariatePID(n_nodes, n_realisations, normalised)[source]

      Bases: idtxl.results.ResultsNetworkAnalysis

      Store results of Multivariate Partial Information Decomposition (PID) analysis.

      @@ -5325,8 +6339,8 @@

      Submodules -
      -get_single_target(target)[source]
      +
      +get_single_target(target)[source]

      Return results for a single target in the network.

      Results for single targets include for each target

        @@ -5362,12 +6376,12 @@

        Submodules -
        -class idtxl.results.ResultsNetworkAnalysis(n_nodes, n_realisations, normalised)[source]
        +
        +class idtxl.results.ResultsNetworkAnalysis(n_nodes, n_realisations, normalised)[source]

        Bases: idtxl.results.Results

        -
        -get_single_target(target, fdr=True)[source]
        +
        +get_single_target(target, fdr=True)[source]

        Return results for a single target in the network.

        Return results for individual processes, contains for each process

        Results for single targets include for each target

        @@ -5413,8 +6427,8 @@

        Submodules -
        -get_target_sources(target, fdr=True)[source]
        +
        +get_target_sources(target, fdr=True)[source]

        Return list of sources (parents) for given target.

        Args:
        @@ -5428,17 +6442,17 @@

        Submodules -
        -property targets_analysed
        +
        +
        +property targets_analysed

        Get index of the current_value.

        -
        -class idtxl.results.ResultsNetworkComparison(n_nodes, n_realisations, normalised)[source]
        +
        +class idtxl.results.ResultsNetworkComparison(n_nodes, n_realisations, normalised)[source]

        Bases: idtxl.results.ResultsNetworkAnalysis

        Store results of network comparison.

        Provide a container for results of network comparison algorithms.

        @@ -5484,8 +6498,8 @@

        Submodules -
        -get_adjacency_matrix(weights='comparison')[source]
        +
        +get_adjacency_matrix(weights='comparison')[source]

        Return adjacency matrix.

        Return adjacency matrix resulting from network inference. Multiple options for the weights are available.

        @@ -5519,8 +6533,8 @@

        Submodules -
        -get_single_target(target)[source]
        +
        +get_single_target(target)[source]

        Return results for a single target in the network.

        Results for single targets include for each target

          @@ -5551,8 +6565,8 @@

          Submodules -
          -get_target_sources(target)[source]
          +
          +get_target_sources(target)[source]

          Return list of sources (parents) for given target.

          Args:
          @@ -5564,8 +6578,8 @@

          Submodules -
          -print_edge_list(weights='comparison')[source]
          +
          +print_edge_list(weights='comparison')[source]

          Print results of network comparison to console.

          Print results of network comparison to console. Output looks like this:

          >>> 0 -> 1, diff_abs = 0.2
          @@ -5590,8 +6604,8 @@ 

          Submodules -
          -class idtxl.results.ResultsNetworkInference(n_nodes, n_realisations, normalised)[source]
          +
          +class idtxl.results.ResultsNetworkInference(n_nodes, n_realisations, normalised)[source]

          Bases: idtxl.results.ResultsNetworkAnalysis

          Store results of network inference.

          Provide a container for results of network inference algorithms, e.g., @@ -5629,8 +6643,8 @@

          Submodules -
          -get_adjacency_matrix(weights, fdr=True)[source]
          +
          +get_adjacency_matrix(weights, fdr=True)[source]

          Return adjacency matrix.

          Return adjacency matrix resulting from network inference. The adjacency matrix can either be generated from FDR-corrected results or @@ -5677,8 +6691,8 @@

          Submodules -
          -get_target_delays(target, criterion='max_te', fdr=True)[source]
          +
          +get_target_delays(target, criterion='max_te', fdr=True)[source]

          Return list of information-transfer delays for a given target.

          Return a list of information-transfer delays for a given target. Information-transfer delays are determined by the lag of the variable @@ -5713,8 +6727,8 @@

          Submodules -
          -print_edge_list(weights, fdr=True)[source]
          +
          +print_edge_list(weights, fdr=True)[source]

          Print results of network inference to console.

          Print edge list resulting from network inference to console. Output may look like this:

          @@ -5744,8 +6758,8 @@

          Submodules -
          -class idtxl.results.ResultsPID(n_nodes, n_realisations, normalised)[source]
          +
          +class idtxl.results.ResultsPID(n_nodes, n_realisations, normalised)[source]

          Bases: idtxl.results.ResultsNetworkAnalysis

          Store results of Partial Information Decomposition (PID) analysis.

          Provide a container for results of Partial Information Decomposition (PID) @@ -5783,8 +6797,8 @@

          Submodules -
          -get_single_target(target)[source]
          +
          +get_single_target(target)[source]

          Return results for a single target in the network.

          Results for single targets include for each target

          +
          +
          +class idtxl.results.ResultsSingleProcessRudelt(processes)[source]
          +

          Bases: object

          +

          Store results of single process analysis.

          +

          Provides a container for the results Rudelt optimization algorithm. To +obtain results for individual processes, call the .get_single_process() +method (see docstring for details).

          +

          Note that for convenience all dictionaries in this class can additionally +be accessed using dot-notation:

          +
          >>> res_network.settings.estimation_method
          +
          +
          +

          or

          +
          >>> res_network.settings['estimation_method'].
          +
          -
          +
          +
          Attributes:
          +
          settingsdict

          settings used for estimation of information theoretic measures

          +
          +
          data_propertiesdict
          +
          data properties, contains
            +
          • n_processes : int - total number of processes analysed

          • +
          +
          +
          +
          +
          processes_analysedlist

          list of analysed processes

          +
          +
          +
          +
          +
          +
          +get_single_process(process)[source]
          +

          Return results for a single process.

          +

          Return results for individual processes, contains for each process

          +
          +
          Args:
          +
          processint

          process id

          +
          +
          +
          +
          Returns:
          +
          dict

          results for single process. Note that for convenience +dictionary entries can either be accessed via keywords +(result[‘selected_vars’]) or via dot-notation +(result.selected_vars). Contains keys

          +
          +
          Processint

          Process that was optimized

          +
          +
          estimation_methodString

          Estimation method that was used for optimization

          +
          +
          T_Dfloat

          Estimated optimal value for the temporal depth TD

          +
          +
          tau_R :

          Information timescale tau_R, a characteristic timescale of history +dependence similar to an autocorrelation time.

          +
          +
          R_totfloat

          Estimated value for the total history dependence Rtot,

          +
          +
          AIS_totfloat

          Estimated value for the total active information storage

          +
          +
          opt_number_of_bins_dint

          Number of bins d for the embedding that yields (R̂tot ,T̂D)

          +
          +
          opt_scaling_kint

          Scaling exponent κ for the embedding that yields (R̂tot , T̂D)

          +
          +
          opt_first_bin_sizeint

          Size of the first bin τ1 for the embedding that yields (R̂tot , T̂D ),

          +
          +
          history_dependencearray with floating-point values

          Estimated history dependence for each embedding

          +
          +
          firing_ratefloat

          Firing rate of the neuron/ spike train

          +
          +
          recording_lengthfloat

          Length of the recording (in seconds)

          +
          +
          H_spikingfloat

          Entropy of the spike times

          +
          +
          +

          if analyse_auto_MI was set to True additionally: +auto_MI : dict

          +
          +

          numpy array of MI values for each delay

          +
          +
          +
          auto_MI_delayslist of int

          list of delays depending on the given auto_MI_bin_sizes and auto_MI_max_delay

          +
          +
          +
          +
          +
          +
          +
          + +
          +
          +property processes_analysed
          +

          Get index of the current_value.

          +
          + +
          + +

      +

      idtxl.stats module

      Provide statistics functions.

      -
      -idtxl.stats.ais_fdr(settings=None, *results)[source]
      +
      +idtxl.stats.ais_fdr(settings=None, *results)[source]

      Perform FDR-correction on results of network AIS estimation.

      Perform correction of the false discovery rate (FDR) after estimation of active information storage (AIS) for all processes in the network. FDR @@ -5984,8 +7099,8 @@

      Submodules -
      -idtxl.stats.check_n_perm(n_perm, alpha)[source]
      +
      +idtxl.stats.check_n_perm(n_perm, alpha)[source]

      Check if no. permutations is big enough to obtain the requested alpha.

      Note:

      The no. permutations must be big enough to theoretically allow for the @@ -5997,8 +7112,8 @@

      Submodules -
      -idtxl.stats.max_statistic(analysis_setup, data, candidate_set, te_max_candidate, conditional=None)[source]
      +
      +idtxl.stats.max_statistic(analysis_setup, data, candidate_set, te_max_candidate, conditional)[source]

      Perform maximum statistics for one candidate source.

      Test if a transfer entropy value is significantly bigger than the maximum values obtained from surrogates of all remanining candidates.

      @@ -6022,9 +7137,8 @@

      Submodulesfloat

      transfer entropy value to be tested

      -
      conditionalnumpy array [optional]

      realisations of conditional, 2D numpy array where array dimensions -represent [realisations x variable dimension] (default=None, no -conditioning performed)

      +
      conditionalnumpy array

      realisations of conditional, 2D numpy array where array dimensions +represent [realisations x variable dimension]

      @@ -6047,8 +7161,8 @@

      Submodules -
      -idtxl.stats.max_statistic_sequential(analysis_setup, data)[source]
      +
      +idtxl.stats.max_statistic_sequential(analysis_setup, data)[source]

      Perform sequential maximum statistics for a set of candidate sources.

      Test multivariate/bivariate MI/TE values against surrogates. Test highest TE/MI value against distribution of highest surrogate values, second @@ -6103,8 +7217,8 @@

      Submodules -
      -idtxl.stats.max_statistic_sequential_bivariate(analysis_setup, data)[source]
      +
      +idtxl.stats.max_statistic_sequential_bivariate(analysis_setup, data)[source]

      Perform sequential maximum statistics for a set of candidate sources.

      Test multivariate/bivariate MI/TE values against surrogates. Test highest TE/MI value against distribution of highest surrogate values, second @@ -6159,8 +7273,8 @@

      Submodules -
      -idtxl.stats.mi_against_surrogates(analysis_setup, data)[source]
      +
      +idtxl.stats.mi_against_surrogates(analysis_setup, data)[source]

      Test estimated mutual information for significance against surrogate data.

      Shuffle realisations of the current value (point to be predicted) and re- calculate mutual information (MI) for shuffled data. The actual estimated @@ -6202,8 +7316,8 @@

      Submodules -
      -idtxl.stats.min_statistic(analysis_setup, data, candidate_set, te_min_candidate, conditional=None)[source]
      +
      +idtxl.stats.min_statistic(analysis_setup, data, candidate_set, te_min_candidate, conditional=None)[source]

      Perform minimum statistics for one candidate source.

      Test if a transfer entropy value is significantly bigger than the minimum values obtained from surrogates of all remanining candidates.

      @@ -6252,8 +7366,8 @@

      Submodules -
      -idtxl.stats.network_fdr(settings=None, *results)[source]
      +
      +idtxl.stats.network_fdr(settings=None, *results)[source]

      Perform FDR-correction on results of network inference.

      Perform correction of the false discovery rate (FDR) after network analysis. FDR correction can either be applied at the target level @@ -6297,8 +7411,8 @@

      Submodules -
      -idtxl.stats.omnibus_test(analysis_setup, data)[source]
      +
      +idtxl.stats.omnibus_test(analysis_setup, data)[source]

      Perform an omnibus test on identified conditional variables.

      Test the joint information transfer from all identified sources to the current value conditional on candidates in the target’s past. To test for @@ -6342,8 +7456,8 @@

      Submodules -
      -idtxl.stats.syn_shd_against_surrogates(analysis_setup, data)[source]
      +
      +idtxl.stats.syn_shd_against_surrogates(analysis_setup, data)[source]

      Test the shared/synergistic information in the PID estimate.

      Shuffle realisations of the target and re-calculate PID, in particular the synergistic and shared information from shuffled data. The original @@ -6382,8 +7496,8 @@

      Submodules -
      -idtxl.stats.unq_against_surrogates(analysis_setup, data)[source]
      +
      +idtxl.stats.unq_against_surrogates(analysis_setup, data)[source]

      Test the unique information in the PID estimate against surrogate data.

      Shuffle realisations of both sources individually and re-calculate PID, in particular the unique information from shuffled data. The original @@ -6421,13 +7535,13 @@

      Submodules +

      +

      idtxl.visualise_graph module

      Plot results of network inference.

      -
      -idtxl.visualise_graph.plot_mute_graph()[source]
      +
      +idtxl.visualise_graph.plot_mute_graph()[source]

      Plot MuTE example network.

      Network of 5 AR-processes, which is used as an example the paper on the MuTE toolbox (Montalto, PLOS ONE, 2014, eq. 14). The @@ -6450,8 +7564,8 @@

      Submodules -
      -idtxl.visualise_graph.plot_network(results, weights, fdr=True)[source]
      +
      +idtxl.visualise_graph.plot_network(results, weights, fdr=True)[source]

      Plot network of multivariate TE between processes.

      Plot graph of the network of (multivariate) interactions between processes (e.g., multivariate TE). The function uses the networkx class for directed @@ -6525,8 +7639,8 @@

      Submodules -
      -idtxl.visualise_graph.plot_network_comparison(results)[source]
      +
      +idtxl.visualise_graph.plot_network_comparison(results)[source]

      Plot results of network comparison.

      Plot results of network comparison. Produces a figure with five subplots, where the first plot shows the network graph of the union network, the @@ -6551,8 +7665,8 @@

      Submodules -
      -idtxl.visualise_graph.plot_selected_vars(results, target, sign_sources=True, display_edge_labels=False, fdr=True)[source]
      +
      +idtxl.visualise_graph.plot_selected_vars(results, target, sign_sources=True, display_edge_labels=False, fdr=True)[source]

      Plot network of a target process and single variables.

      Plot graph of the network of (multivariate) interactions between source variables and the target. The function uses the networkx class for directed @@ -6582,8 +7696,8 @@

      Submodules +

      +

      Module contents

      IDTxl: Information Dynamics Toolkit xl.

      IDTxl is a comprehensive software package for efficient inference of networks @@ -6613,8 +7727,8 @@

      Submodules

      @@ -6623,8 +7737,9 @@

      Submodules
      -

      Table of Contents

      -
      @@ -49,11 +50,11 @@

      Navigation

      -
      +

      The Data Class

      -
      -class idtxl.data.Data(data=None, dim_order='psr', normalise=True, seed=None)[source]
      +
      +class idtxl.data.Data(data=None, dim_order='psr', normalise=True, seed=None)[source]

      Store data for information dynamics estimation.

      Data takes a 1- to 3-dimensional array representing realisations of random variables in dimensions: processes, samples (over time), and replications. @@ -116,15 +117,15 @@

      The Data Class -
      -property data
      +
      +
      +property data

      Return data array.

      -
      -generate_logistic_maps_data(n_samples=1000, n_replications=10, coefficient_matrices=array([[[0.5, 0.0], [0.4, 0.5]]]), noise_std=0.1)[source]
      +
      +generate_logistic_maps_data(n_samples=1000, n_replications=10, coefficient_matrices=array([[[0.5, 0.], [0.4, 0.5]]]), noise_std=0.1)[source]

      Generate discrete-time coupled-logistic-maps time series.

      Generate data and overwrite the instance’s current data.

      The implemented logistic map function is f(x) = 4 * x * (1 - x).

      @@ -150,8 +151,8 @@

      The Data Class -
      -generate_mute_data(n_samples=1000, n_replications=10)[source]
      +
      +generate_mute_data(n_samples=1000, n_replications=10)[source]

      Generate example data for a 5-process network.

      Generate example data and overwrite the instance’s current data. The network is used as an example the paper on the MuTE toolbox (Montalto, @@ -185,8 +186,8 @@

      The Data Class -
      -generate_var_data(n_samples=1000, n_replications=10, coefficient_matrices=array([[[0.5, 0.0], [0.4, 0.5]]]), noise_std=0.1)[source]
      +
      +generate_var_data(n_samples=1000, n_replications=10, coefficient_matrices=array([[[0.5, 0.], [0.4, 0.5]]]), noise_std=0.1)[source]

      Generate discrete-time VAR (vector autoregressive) time series.

      Generate data and overwrite the instance’s current data.

      @@ -211,8 +212,8 @@

      The Data Class -
      -get_realisations(current_value, idx_list, shuffle=False)[source]
      +
      +get_realisations(current_value, idx_list, shuffle=False)[source]

      Return realisations for a list of indices.

      Return realisations for indices in list. Optionally, realisations can be shuffled to create surrogate data for statistical testing. For @@ -303,20 +304,20 @@

      The Data Class -
      -get_seed()[source]
      +
      +get_seed()[source]

      return the initial seed of the data

      -
      -get_state()[source]
      +
      +get_state()[source]

      return the current state of the random seed

      -
      -n_realisations(current_value=None)[source]
      +
      +n_realisations(current_value=None)[source]

      Number of realisations over samples and replications.

      Args:
      @@ -332,14 +333,14 @@

      The Data Class -
      -n_realisations_repl()[source]
      +
      +n_realisations_repl()[source]

      Number of realisations over replications.

      -
      -n_realisations_samples(current_value=None)[source]
      +
      +n_realisations_samples(current_value=None)[source]

      Number of realisations over samples.

      Args:
      @@ -354,8 +355,8 @@

      The Data Class -
      -permute_replications(current_value, idx_list)[source]
      +
      +permute_replications(current_value, idx_list)[source]

      Return realisations with permuted replications (time stays intact).

      Create surrogate data by permuting realisations over replications while keeping the temporal structure (order of samples) intact. Return @@ -444,8 +445,8 @@

      The Data Class -
      -permute_samples(current_value, idx_list, perm_settings)[source]
      +
      +permute_samples(current_value, idx_list, perm_settings)[source]

      Return realisations with permuted samples (repl. stays intact).

      Create surrogate data by permuting realisations over samples (time) while keeping the order of replications intact. Surrogates can be @@ -655,8 +656,8 @@

      The Data Class -
      -set_data(data, dim_order)[source]
      +
      +set_data(data, dim_order)[source]

      Overwrite data in an existing Data object.

      Args:
      @@ -672,8 +673,8 @@

      The Data Class -
      -slice_permute_replications(process)[source]
      +
      +slice_permute_replications(process)[source]

      Return data slice with permuted replications (time stays intact).

      Create surrogate data by permuting realisations over replications while keeping the temporal structure (order of samples) intact. Return @@ -683,8 +684,8 @@

      The Data Class -
      -slice_permute_samples(process, perm_settings)[source]
      +
      +slice_permute_samples(process, perm_settings)[source]

      Return slice of data with permuted samples (repl. stays intact).

      Create surrogate data by permuting data in a slice over samples (time) while keeping the order of replications intact. Return slice for the @@ -883,7 +884,7 @@

      The Data Class

      @@ -892,12 +893,16 @@

      The Data Class
      -

      Previous topic

      -

      Welcome to IDTxl’s documentation!

      -

      Next topic

      -

      Algorithms for network inference

      + +

      This Page

      \ No newline at end of file diff --git a/docs/html/idtxl_estimators.html b/docs/html/idtxl_estimators.html index 50226472..010a7744 100644 --- a/docs/html/idtxl_estimators.html +++ b/docs/html/idtxl_estimators.html @@ -4,11 +4,12 @@ - - Information theoretic estimators — IDTxl 1.2.1 documentation - - - + + + Information theoretic estimators — IDTxl 1.3 documentation + + + @@ -39,7 +40,7 @@

      Navigation

    • previous |
    • - +
      @@ -49,14 +50,14 @@

      Navigation

      -
      +

      Information theoretic estimators

      -
      +

      JIDT Estimators (CPU)

      Provide JIDT estimators.

      -
      -class idtxl.estimators_jidt.JidtDiscrete(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscrete(settings)[source]

      Abstract class for implementation of discrete JIDT-estimators.

      Abstract class for implementation of plug-in JIDT-estimators for discrete data. Child classes implement estimators for mutual information (MI), @@ -88,8 +89,8 @@

      JIDT Estimators (CPU)

      -
      -estimate_surrogates_analytic(n_perm=200, **data)[source]
      +
      +estimate_surrogates_analytic(n_perm=200, **data)[source]

      Return estimate of the analytical surrogate distribution.

      This method must be implemented because this class’ is_analytic_null_estimator() method returns true.

      @@ -114,8 +115,8 @@

      JIDT Estimators (CPU)

      -
      -abstract get_analytic_distribution(**data)[source]
      +
      +abstract get_analytic_distribution(**data)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -137,8 +138,8 @@

      JIDT Estimators (CPU)

      -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -151,8 +152,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtDiscreteAIS(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscreteAIS(settings)[source]

      Calculate AIS with JIDT’s discrete-variable implementation.

      Calculate the active information storage (AIS) for one process. Call JIDT via jpype and use the discrete estimator. See parent class for references.

      @@ -182,8 +183,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(process, return_calc=False)[source]
      +
      +estimate(process, return_calc=False)[source]

      Estimate active information storage.

      Args:
      @@ -215,8 +216,8 @@

      JIDT Estimators (CPU)

      -
      -get_analytic_distribution(process)[source]
      +
      +get_analytic_distribution(process)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -241,8 +242,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtDiscreteCMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscreteCMI(settings=None)[source]

      Calculate CMI with JIDT’s implementation for discrete variables.

      Calculate the conditional mutual information between two variables given the third. Call JIDT via jpype and use the discrete estimator. See parent @@ -276,8 +277,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(var1, var2, conditional=None, return_calc=False)[source]
      +
      +estimate(var1, var2, conditional=None, return_calc=False)[source]

      Estimate conditional mutual information.

      Args:
      @@ -314,8 +315,8 @@

      JIDT Estimators (CPU)

      -
      -get_analytic_distribution(var1, var2, conditional=None)[source]
      +
      +get_analytic_distribution(var1, var2, conditional=None)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -345,8 +346,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtDiscreteMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscreteMI(settings=None)[source]

      Calculate MI with JIDT’s discrete-variable implementation.

      Calculate the mutual information (MI) between two variables. Call JIDT via jpype and use the discrete estimator. See parent class for references.

      @@ -379,8 +380,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(var1, var2, return_calc=False)[source]
      +
      +estimate(var1, var2, return_calc=False)[source]

      Estimate mutual information.

      Args:
      @@ -414,8 +415,8 @@

      JIDT Estimators (CPU)

      -
      -get_analytic_distribution(var1, var2)[source]
      +
      +get_analytic_distribution(var1, var2)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -442,8 +443,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtDiscreteTE(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtDiscreteTE(settings)[source]

      Calculate TE with JIDT’s implementation for discrete variables.

      Calculate the transfer entropy between two time series processes. Call JIDT via jpype and use the discrete estimator. Transfer entropy is @@ -488,8 +489,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(source, target, return_calc=False)[source]
      +
      +estimate(source, target, return_calc=False)[source]

      Estimate transfer entropy from a source to a target variable.

      Args:
      @@ -523,8 +524,8 @@

      JIDT Estimators (CPU)

      -
      -get_analytic_distribution(source, target)[source]
      +
      +get_analytic_distribution(source, target)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -551,8 +552,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtEstimator(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtEstimator(settings=None)[source]

      Abstract class for implementation of JIDT estimators.

      Abstract class for implementation of JIDT estimators, child classes implement estimators for mutual information (MI), conditional mutual @@ -588,8 +589,8 @@

      JIDT Estimators (CPU)

      -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -602,8 +603,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtGaussian(CalcClass, settings)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussian(CalcClass, settings)[source]

      Abstract class for implementation of JIDT Gaussian-estimators.

      Abstract class for implementation of JIDT Gaussian-estimators, child classes implement estimators for mutual information (MI), conditional @@ -629,10 +630,10 @@

      JIDT Estimators (CPU)

      -
      -estimate_surrogates_analytic(n_perm=200, **data)[source]
      -

      Estimate the surrogate distribution analytically. -This method must be implemented because this class’ +

      +estimate_surrogates_analytic(n_perm=200, **data)[source]
      +

      Estimate the surrogate distribution analytically.

      +

      This method must be implemented because this class’ is_analytic_null_estimator() method returns true

      Args:
      @@ -655,8 +656,8 @@

      JIDT Estimators (CPU)

      -
      -get_analytic_distribution(**data)[source]
      +
      +get_analytic_distribution(**data)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -678,8 +679,8 @@

      JIDT Estimators (CPU)

      -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -692,8 +693,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtGaussianAIS(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussianAIS(settings)[source]

      Calculate active information storage with JIDT’s Gaussian implementation.

      Calculate active information storage (AIS) for some process using JIDT’s implementation of the Gaussian estimator. AIS is defined as the @@ -727,8 +728,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(process)[source]
      +
      +estimate(process)[source]

      Estimate active information storage.

      Args:
      @@ -750,8 +751,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtGaussianCMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussianCMI(settings=None)[source]

      Calculate conditional mutual infor with JIDT’s Gaussian implementation.

      Computes the differential conditional mutual information of two multivariate sets of observations, conditioned on another, assuming that @@ -782,8 +783,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(var1, var2, conditional=None)[source]
      +
      +estimate(var1, var2, conditional=None)[source]

      Estimate conditional mutual information.

      Args:
      @@ -808,8 +809,8 @@

      JIDT Estimators (CPU)

      -
      -get_analytic_distribution(var1, var2, conditional=None)[source]
      +
      +get_analytic_distribution(var1, var2, conditional=None)[source]

      Return a JIDT AnalyticNullDistribution object.

      Required so that our estimate_surrogates_analytic method can use the common_estimate_surrogates_analytic() method, where data is formatted @@ -838,8 +839,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtGaussianMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussianMI(settings=None)[source]

      Calculate mutual information with JIDT’s Gaussian implementation.

      Calculate the mutual information between two variables. Call JIDT via jpype and use the Gaussian estimator. See parent class for references.

      @@ -866,8 +867,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(var1, var2)[source]
      +
      +estimate(var1, var2)[source]

      Estimate mutual information.

      Args:
      @@ -891,8 +892,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtGaussianTE(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtGaussianTE(settings)[source]

      Calculate transfer entropy with JIDT’s Gaussian implementation.

      Calculate transfer entropy between a source and a target variable using JIDT’s implementation of the Gaussian estimator. Transfer entropy is @@ -935,8 +936,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(source, target)[source]
      +
      +estimate(source, target)[source]

      Estimate transfer entropy from a source to a target variable.

      Args:
      @@ -960,8 +961,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtKraskov(CalcClass, settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskov(CalcClass, settings=None)[source]

      Abstract class for implementation of JIDT Kraskov-estimators.

      Abstract class for implementation of JIDT Kraskov-estimators, child classes implement estimators for mutual information (MI), conditional mutual @@ -1001,8 +1002,8 @@

      JIDT Estimators (CPU)

      -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -1015,8 +1016,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtKraskovAIS(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskovAIS(settings)[source]

      Calculate active information storage with JIDT’s Kraskov implementation.

      Calculate active information storage (AIS) for some process using JIDT’s implementation of the Kraskov type 1 estimator. AIS is defined as the @@ -1062,8 +1063,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(process)[source]
      +
      +estimate(process)[source]

      Estimate active information storage.

      Args:
      @@ -1085,8 +1086,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtKraskovCMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskovCMI(settings=None)[source]

      Calculate conditional mutual inform with JIDT’s Kraskov implementation.

      Calculate the conditional mutual information (CMI) between three variables. Call JIDT via jpype and use the Kraskov 1 estimator. If no conditional is @@ -1127,8 +1128,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(var1, var2, conditional=None)[source]
      +
      +estimate(var1, var2, conditional=None)[source]

      Estimate conditional mutual information.

      Args:
      @@ -1155,8 +1156,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtKraskovMI(settings=None)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskovMI(settings=None)[source]

      Calculate mutual information with JIDT’s Kraskov implementation.

      Calculate the mutual information between two variables. Call JIDT via jpype and use the Kraskov 1 estimator. See parent class for references.

      @@ -1195,8 +1196,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(var1, var2)[source]
      +
      +estimate(var1, var2)[source]

      Estimate mutual information.

      Args:
      @@ -1220,8 +1221,8 @@

      JIDT Estimators (CPU)

      -
      -class idtxl.estimators_jidt.JidtKraskovTE(settings)[source]
      +
      +class idtxl.estimators_jidt.JidtKraskovTE(settings)[source]

      Calculate transfer entropy with JIDT’s Kraskov implementation.

      Calculate transfer entropy between a source and a target variable using JIDT’s implementation of the Kraskov type 1 estimator. Transfer entropy is @@ -1266,8 +1267,8 @@

      JIDT Estimators (CPU)

      -
      -estimate(source, target)[source]
      +
      +estimate(source, target)[source]

      Estimate transfer entropy from a source to a target variable.

      Args:
      @@ -1291,8 +1292,8 @@

      JIDT Estimators (CPU)

      -
      -idtxl.estimators_jidt.common_estimate_surrogates_analytic(estimator, n_perm=200, **data)[source]
      +
      +idtxl.estimators_jidt.common_estimate_surrogates_analytic(estimator, n_perm=200, **data)[source]

      Estimate the surrogate distribution analytically for JidtEstimator.

      Estimate the surrogate distribution analytically for a JidtEstimator which is_analytic_null_estimator(), by sampling estimates at random @@ -1318,12 +1319,12 @@

      JIDT Estimators (CPU)

      -
      -
      +
      +

      OpenCL Estimators (GPU)

      -
      -class idtxl.estimators_opencl.OpenCLKraskov(settings=None)[source]
      +
      +class idtxl.estimators_opencl.OpenCLKraskov(settings=None)[source]

      Abstract class for implementation of OpenCL estimators.

      Abstract class for implementation of OpenCL estimators, child classes implement estimators for mutual information (MI) and conditional mutual @@ -1375,8 +1376,8 @@

      OpenCL Estimators (GPU)

      -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -1387,8 +1388,8 @@

      OpenCL Estimators (GPU)

      -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -1401,8 +1402,8 @@

      OpenCL Estimators (GPU)

      -
      -class idtxl.estimators_opencl.OpenCLKraskovCMI(settings=None)[source]
      +
      +class idtxl.estimators_opencl.OpenCLKraskovCMI(settings=None)[source]

      Calculate conditional mutual inform with OpenCL Kraskov implementation.

      Calculate the conditional mutual information (CMI) between three variables using OpenCL GPU-code. If no conditional is given (is None), the function @@ -1434,8 +1435,8 @@

      OpenCL Estimators (GPU)

      -
      -estimate(var1, var2, conditional=None, n_chunks=1)[source]
      +
      +estimate(var1, var2, conditional=None, n_chunks=1)[source]

      Estimate conditional mutual information.

      If conditional is None, the mutual information between var1 and var2 is calculated.

      @@ -1470,8 +1471,8 @@

      OpenCL Estimators (GPU)

      -
      -class idtxl.estimators_opencl.OpenCLKraskovMI(settings=None)[source]
      +
      +class idtxl.estimators_opencl.OpenCLKraskovMI(settings=None)[source]

      Calculate mutual information with OpenCL Kraskov implementation.

      Calculate the mutual information (MI) between two variables using OpenCL GPU-code. See parent class for references.

      @@ -1503,8 +1504,8 @@

      OpenCL Estimators (GPU)

      -
      -estimate(var1, var2, n_chunks=1)[source]
      +
      +estimate(var1, var2, n_chunks=1)[source]

      Estimate mutual information.

      Args:
      @@ -1534,8 +1535,8 @@

      OpenCL Estimators (GPU)

      -
      -
      + +

      PID Estimators

      Partical information decomposition for discrete random variables.

      This module provides an estimator for partial information decomposition @@ -1543,8 +1544,8 @@

      PID Estimatorshttp://doi.org/10.3390/e16042161

      -
      -class idtxl.estimators_pid.SydneyPID(settings)[source]
      +
      +class idtxl.estimators_pid.SydneyPID(settings)[source]

      Estimate partial information decomposition of discrete variables.

      Fast implementation of the BROJA partial information decomposition (PID) estimator for discrete data (Bertschinger, 2014). The estimator does not @@ -1603,8 +1604,8 @@

      PID Estimators -
      -estimate(s1, s2, t)[source]
      +
      +estimate(s1, s2, t)[source]
      Args:
      s1numpy array

      1D array containing realizations of a discrete random variable

      @@ -1625,8 +1626,8 @@

      PID Estimators -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -1637,8 +1638,8 @@

      PID Estimators -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -1651,8 +1652,8 @@

      PID Estimators -
      -class idtxl.estimators_pid.TartuPID(settings)[source]
      +
      +class idtxl.estimators_pid.TartuPID(settings)[source]

      Estimate partial information decomposition for two inputs and one output

      Implementation of the partial information decomposition (PID) estimator for discrete data. The estimator finds shared information, unique information @@ -1684,8 +1685,8 @@

      PID Estimators -
      -estimate(s1, s2, t)[source]
      +
      +estimate(s1, s2, t)[source]
      Args:
      s1numpy array

      1D array containing realizations of a discrete random variable

      @@ -1705,8 +1706,8 @@

      PID Estimators -
      -is_analytic_null_estimator()[source]
      +
      +is_analytic_null_estimator()[source]

      Indicate if estimator supports analytic surrogates.

      Return true if the estimator implements estimate_surrogates_analytic() where data is formatted as per the estimate method for this estimator.

      @@ -1717,8 +1718,8 @@

      PID Estimators -
      -is_parallel()[source]
      +
      +is_parallel()[source]

      Indicate if estimator supports parallel estimation over chunks.

      Return true if the supports parallel estimation over chunks, where a chunk is one independent data set.

      @@ -1730,8 +1731,8 @@

      PID Estimators

      @@ -1740,8 +1741,9 @@

      PID Estimators
      -

      Table of Contents

      -
      @@ -49,32 +50,32 @@

      Navigation

      -
      +

      Helper functions

      -
      +

      utils module

      Provide IDTxl utility functions.

      -
      -idtxl.idtxl_utils.argsort_descending(a)[source]
      +
      +idtxl.idtxl_utils.argsort_descending(a)[source]

      Sort array in descending order and return sortind indices.

      -
      -idtxl.idtxl_utils.autocorrelation(x)[source]
      +
      +idtxl.idtxl_utils.autocorrelation(x)[source]

      Calculate autocorrelation of a vector.

      -
      -idtxl.idtxl_utils.calculate_mi(corr)[source]
      +
      +idtxl.idtxl_utils.calculate_mi(corr)[source]

      Calculate mutual information from correlation coefficient.

      -
      -idtxl.idtxl_utils.combine_discrete_dimensions(a, numBins)[source]
      +
      +idtxl.idtxl_utils.combine_discrete_dimensions(a, numBins)[source]

      Combine multi-dimensional discrete variable into a single dimension.

      Combine all dimensions for a discrete variable down into a single dimensional value for each sample. This is done basically by multiplying @@ -100,8 +101,8 @@

      utils module -
      -idtxl.idtxl_utils.conflicting_entries(dict_1, dict_2)[source]
      +
      +idtxl.idtxl_utils.conflicting_entries(dict_1, dict_2)[source]

      Test two dictionaries for unequal entries.

      Note that only keys that are present in both dicts are compared. If one dictionary contains an entry not present in the other dictionary, the @@ -109,8 +110,8 @@

      utils module -
      -idtxl.idtxl_utils.discretise(a, numBins)[source]
      +
      +idtxl.idtxl_utils.discretise(a, numBins)[source]

      Discretise continuous data.

      Discretise continuous data into discrete values (with 0 as lowest) by evenly partitioning the range of the data, one dimension at a time. @@ -134,8 +135,8 @@

      utils module -
      -idtxl.idtxl_utils.discretise_max_ent(a, numBins)[source]
      +
      +idtxl.idtxl_utils.discretise_max_ent(a, numBins)[source]

      Discretise continuous data using maximum entropy partitioning.

      Discretise continuous data into discrete values (with 0 as lowest) by making a maximum entropy partitioning, one dimension at a time. Adapted @@ -159,20 +160,20 @@

      utils module -
      -idtxl.idtxl_utils.equal_dicts(dict_1, dict_2)[source]
      +
      +idtxl.idtxl_utils.equal_dicts(dict_1, dict_2)[source]

      Test two dictionaries for equality.

      -
      -idtxl.idtxl_utils.print_dict(d, indent=4)[source]
      +
      +idtxl.idtxl_utils.print_dict(d, indent=4)[source]

      Use Python’s pretty printer to print dictionaries to the console.

      -
      -idtxl.idtxl_utils.remove_column(a, j)[source]
      +
      +idtxl.idtxl_utils.remove_column(a, j)[source]

      Remove a column from a numpy array.

      This is faster than logical indexing (‘25 times faster’), because it does not make copies, see @@ -189,8 +190,8 @@

      utils module -
      -idtxl.idtxl_utils.remove_row(a, i)[source]
      +
      +idtxl.idtxl_utils.remove_row(a, i)[source]

      Remove a row from a numpy array.

      This is faster than logical indexing (‘25 times faster’), because it does not make copies, see @@ -207,8 +208,8 @@

      utils module -
      -idtxl.idtxl_utils.separate_arrays(idx_all, idx_single, a)[source]
      +
      +idtxl.idtxl_utils.separate_arrays(idx_all, idx_single, a)[source]

      Separate a single column from all other columns in a 2D-array.

      Return the separated single column and the remaining columns of a 2D- array.

      @@ -235,14 +236,14 @@

      utils module -
      -idtxl.idtxl_utils.sort_descending(a)[source]
      +
      +idtxl.idtxl_utils.sort_descending(a)[source]

      Sort array in descending order.

      -
      -idtxl.idtxl_utils.standardise(a, dimension=0, df=1)[source]
      +
      +idtxl.idtxl_utils.standardise(a, dimension=0, df=1)[source]

      Z-standardise a numpy array along a given dimension.

      Standardise array along the axis defined in dimension using the denominator (N - df) for the calculation of the standard deviation.

      @@ -265,8 +266,8 @@

      utils module -
      -idtxl.idtxl_utils.swap_chars(s, i_1, i_2)[source]
      +
      +idtxl.idtxl_utils.swap_chars(s, i_1, i_2)[source]

      Swap to characters in a string.

      Example:
      >>> print(swap_chars('heLlotHere', 2, 6))
      @@ -277,13 +278,13 @@ 

      utils module +

      +

      stats module

      Provide statistics functions.

      -
      -idtxl.stats.ais_fdr(settings=None, *results)[source]
      +
      +idtxl.stats.ais_fdr(settings=None, *results)[source]

      Perform FDR-correction on results of network AIS estimation.

      Perform correction of the false discovery rate (FDR) after estimation of active information storage (AIS) for all processes in the network. FDR @@ -323,8 +324,8 @@

      stats module -
      -idtxl.stats.check_n_perm(n_perm, alpha)[source]
      +
      +idtxl.stats.check_n_perm(n_perm, alpha)[source]

      Check if no. permutations is big enough to obtain the requested alpha.

      Note:

      The no. permutations must be big enough to theoretically allow for the @@ -336,8 +337,8 @@

      stats module -
      -idtxl.stats.max_statistic(analysis_setup, data, candidate_set, te_max_candidate, conditional=None)[source]
      +
      +idtxl.stats.max_statistic(analysis_setup, data, candidate_set, te_max_candidate, conditional)[source]

      Perform maximum statistics for one candidate source.

      Test if a transfer entropy value is significantly bigger than the maximum values obtained from surrogates of all remanining candidates.

      @@ -361,9 +362,8 @@

      stats modulefloat

      transfer entropy value to be tested

      -
      conditionalnumpy array [optional]

      realisations of conditional, 2D numpy array where array dimensions -represent [realisations x variable dimension] (default=None, no -conditioning performed)

      +
      conditionalnumpy array

      realisations of conditional, 2D numpy array where array dimensions +represent [realisations x variable dimension]

      @@ -386,8 +386,8 @@

      stats module -
      -idtxl.stats.max_statistic_sequential(analysis_setup, data)[source]
      +
      +idtxl.stats.max_statistic_sequential(analysis_setup, data)[source]

      Perform sequential maximum statistics for a set of candidate sources.

      Test multivariate/bivariate MI/TE values against surrogates. Test highest TE/MI value against distribution of highest surrogate values, second @@ -442,8 +442,8 @@

      stats module -
      -idtxl.stats.max_statistic_sequential_bivariate(analysis_setup, data)[source]
      +
      +idtxl.stats.max_statistic_sequential_bivariate(analysis_setup, data)[source]

      Perform sequential maximum statistics for a set of candidate sources.

      Test multivariate/bivariate MI/TE values against surrogates. Test highest TE/MI value against distribution of highest surrogate values, second @@ -498,8 +498,8 @@

      stats module -
      -idtxl.stats.mi_against_surrogates(analysis_setup, data)[source]
      +
      +idtxl.stats.mi_against_surrogates(analysis_setup, data)[source]

      Test estimated mutual information for significance against surrogate data.

      Shuffle realisations of the current value (point to be predicted) and re- calculate mutual information (MI) for shuffled data. The actual estimated @@ -541,8 +541,8 @@

      stats module -
      -idtxl.stats.min_statistic(analysis_setup, data, candidate_set, te_min_candidate, conditional=None)[source]
      +
      +idtxl.stats.min_statistic(analysis_setup, data, candidate_set, te_min_candidate, conditional=None)[source]

      Perform minimum statistics for one candidate source.

      Test if a transfer entropy value is significantly bigger than the minimum values obtained from surrogates of all remanining candidates.

      @@ -591,8 +591,8 @@

      stats module -
      -idtxl.stats.network_fdr(settings=None, *results)[source]
      +
      +idtxl.stats.network_fdr(settings=None, *results)[source]

      Perform FDR-correction on results of network inference.

      Perform correction of the false discovery rate (FDR) after network analysis. FDR correction can either be applied at the target level @@ -636,8 +636,8 @@

      stats module -
      -idtxl.stats.omnibus_test(analysis_setup, data)[source]
      +
      +idtxl.stats.omnibus_test(analysis_setup, data)[source]

      Perform an omnibus test on identified conditional variables.

      Test the joint information transfer from all identified sources to the current value conditional on candidates in the target’s past. To test for @@ -681,8 +681,8 @@

      stats module -
      -idtxl.stats.syn_shd_against_surrogates(analysis_setup, data)[source]
      +
      +idtxl.stats.syn_shd_against_surrogates(analysis_setup, data)[source]

      Test the shared/synergistic information in the PID estimate.

      Shuffle realisations of the target and re-calculate PID, in particular the synergistic and shared information from shuffled data. The original @@ -721,8 +721,8 @@

      stats module -
      -idtxl.stats.unq_against_surrogates(analysis_setup, data)[source]
      +
      +idtxl.stats.unq_against_surrogates(analysis_setup, data)[source]

      Test the unique information in the PID estimate against surrogate data.

      Shuffle realisations of both sources individually and re-calculate PID, in particular the unique information from shuffled data. The original @@ -760,8 +760,8 @@

      stats module

      @@ -770,8 +770,9 @@

      stats module
      -

      Table of Contents

      -
      @@ -49,11 +50,11 @@

      Navigation

      -
      +

      Network comparison

      -
      -class idtxl.network_comparison.NetworkComparison[source]
      +
      +class idtxl.network_comparison.NetworkComparison[source]

      Set up network comparison between two experimental conditions.

      The class provides methods for the comparison of networks inferred from data recorded under two experimental conditions A and B. Four statistical @@ -98,8 +99,8 @@

      Network comparison -
      -calculate_link_te(data, target, sources='all')[source]
      +
      +calculate_link_te(data, target, sources='all')[source]

      Calculate the information transfer for whole links into a target.

      Calculate the information transfer for whole links as the joint information transfer from all variables selected for a single source @@ -129,8 +130,8 @@

      Network comparison -
      -compare_between(settings, network_set_a, network_set_b, data_set_a, data_set_b)[source]
      +
      +compare_between(settings, network_set_a, network_set_b, data_set_a, data_set_b)[source]

      Compare networks inferred under two conditions between subjects.

      Compare two sets of networks inferred from two sets of data recorded under different experimental conditions within multiple subjects, i.e., @@ -163,8 +164,8 @@

      Network comparison -
      -compare_links_within(settings, link_a, link_b, network, data)[source]
      +
      +compare_links_within(settings, link_a, link_b, network, data)[source]

      Compare two links within the same network.

      Compare two links within the same network. Check if information transfer is different from information transfer in a second link.

      @@ -213,8 +214,8 @@

      Network comparison -
      -compare_within(settings, network_a, network_b, data_a, data_b)[source]
      +
      +compare_within(settings, network_a, network_b, data_a, data_b)[source]

      Compare networks inferred under two conditions within one subject.

      Compare two networks inferred from data recorded under two different experimental conditions within one subject (units of observations are @@ -263,7 +264,7 @@

      Network comparison

      @@ -272,12 +273,16 @@

      Network comparison
      -

      Previous topic

      -

      Algorithms for the analysis of node dynamics

      -

      Next topic

      -

      The Results Class

      + +
      +

      Next topic

      +

      The Results Class

      +

      This Page

      \ No newline at end of file diff --git a/docs/html/idtxl_network_inference.html b/docs/html/idtxl_network_inference.html index 504a7ebe..1d9fc815 100644 --- a/docs/html/idtxl_network_inference.html +++ b/docs/html/idtxl_network_inference.html @@ -4,11 +4,12 @@ - - Algorithms for network inference — IDTxl 1.2.1 documentation - - - + + + Algorithms for network inference — IDTxl 1.3 documentation + + + @@ -39,7 +40,7 @@

      Navigation

    • previous |
    • - +
      @@ -49,13 +50,13 @@

      Navigation

      -
      +

      Algorithms for network inference

      -
      +

      Multivariate Transfer Entropy (mTE)

      -
      -class idtxl.multivariate_te.MultivariateTE[source]
      +
      +class idtxl.multivariate_te.MultivariateTE[source]

      Perform network inference using multivariate transfer entropy.

      Perform network inference using multivariate transfer entropy (TE). To perform network inference call analyse_network() on the whole network or a @@ -78,8 +79,9 @@

      Multivariate Transfer Entropy (mTE)http://doi.org/10.1103/PhysRevE.83.051112

      -
      -
      Attributes:
      +

      Attributes:

      +
      +
      source_setlist

      indices of source processes tested for their influence on the target

      @@ -107,11 +109,10 @@

      Multivariate Transfer Entropy (mTE)bool

      statistical significance of the over-all TE

      -
      -
      +

      -
      -analyse_network(settings, data, targets='all', sources='all')[source]
      +
      +analyse_network(settings, data, targets='all', sources='all')[source]

      Find multivariate transfer entropy between all nodes in the network.

      Estimate multivariate transfer entropy (TE) between all nodes in the network or between selected sources and targets.

      @@ -173,8 +174,8 @@

      Multivariate Transfer Entropy (mTE) -
      -analyse_single_target(settings, data, target, sources='all')[source]
      +
      +analyse_single_target(settings, data, target, sources='all')[source]

      Find multivariate transfer entropy between sources and a target.

      Find multivariate transfer entropy (TE) between all source processes and the target process. Uses multivariate, non-uniform embedding found @@ -283,12 +284,12 @@

      Multivariate Transfer Entropy (mTE) +

      +

      Bivariate Transfer Entropy (bTE)

      -
      -class idtxl.bivariate_te.BivariateTE[source]
      +
      +class idtxl.bivariate_te.BivariateTE[source]

      Perform network inference using bivariate transfer entropy.

      Perform network inference using bivariate transfer entropy (TE). To perform network inference call analyse_network() on the whole network or a @@ -343,8 +344,8 @@

      Bivariate Transfer Entropy (bTE) -
      -analyse_network(settings, data, targets='all', sources='all')[source]
      +
      +analyse_network(settings, data, targets='all', sources='all')[source]

      Find bivariate transfer entropy between all nodes in the network.

      Estimate bivariate transfer entropy (TE) between all nodes in the network or between selected sources and targets.

      @@ -405,8 +406,8 @@

      Bivariate Transfer Entropy (bTE) -
      -analyse_single_target(settings, data, target, sources='all')[source]
      +
      +analyse_single_target(settings, data, target, sources='all')[source]

      Find bivariate transfer entropy between sources and a target.

      Find bivariate transfer entropy (TE) between all potential source processes and the target process. Uses bivariate, non-uniform embedding @@ -519,12 +520,12 @@

      Bivariate Transfer Entropy (bTE) +

      +

      Multivariate Mutual Information (mMI)

      -
      -class idtxl.multivariate_mi.MultivariateMI[source]
      +
      +class idtxl.multivariate_mi.MultivariateMI[source]

      Perform network inference using multivariate mutual information.

      Perform network inference using multivariate mutual information (MI). To perform network inference call analyse_network() on the whole network or a @@ -571,8 +572,8 @@

      Multivariate Mutual Information (mMI) -
      -analyse_network(settings, data, targets='all', sources='all')[source]
      +
      +analyse_network(settings, data, targets='all', sources='all')[source]

      Find multivariate mutual information between nodes in the network.

      Estimate multivariate mutual information (MI) between all nodes in the network or between selected sources and targets.

      @@ -640,8 +641,8 @@

      Multivariate Mutual Information (mMI) -
      -analyse_single_target(settings, data, target, sources='all')[source]
      +
      +analyse_single_target(settings, data, target, sources='all')[source]

      Find multivariate mutual information between sources and a target.

      Find multivariate mutual information (MI) between all source processes and the target process. Uses multivariate, non-uniform embedding found @@ -752,12 +753,12 @@

      Multivariate Mutual Information (mMI) +

      +

      Bivariate Mutual Information (bMI)

      -
      -class idtxl.bivariate_mi.BivariateMI[source]
      +
      +class idtxl.bivariate_mi.BivariateMI[source]

      Perform network inference using bivariate mutual information.

      Perform network inference using bivariate mutual information (MI). To perform network inference call analyse_network() on the whole network or a @@ -806,8 +807,8 @@

      Bivariate Mutual Information (bMI) -
      -analyse_network(settings, data, targets='all', sources='all')[source]
      +
      +analyse_network(settings, data, targets='all', sources='all')[source]

      Find bivariate mutual information between all nodes in the network.

      Estimate bivariate mutual information (MI) between all nodes in the network or between selected sources and targets.

      @@ -871,8 +872,8 @@

      Bivariate Mutual Information (bMI) -
      -analyse_single_target(settings, data, target, sources='all')[source]
      +
      +analyse_single_target(settings, data, target, sources='all')[source]

      Find bivariate mutual information between sources and a target.

      Find bivariate mutual information (MI) between all potential source processes and the target process. Uses bivariate, non-uniform embedding @@ -986,8 +987,8 @@

      Bivariate Mutual Information (bMI)

      @@ -996,8 +997,9 @@

      Bivariate Mutual Information (bMI)
      -

      Table of Contents

      -
      @@ -49,13 +50,13 @@

      Navigation

      -
      +

      Algorithms for the analysis of node dynamics

      -
      +

      Active Information Storage (AIS)

      -
      -class idtxl.active_information_storage.ActiveInformationStorage[source]
      +
      +class idtxl.active_information_storage.ActiveInformationStorage[source]

      Estimate active information storage in individual processes.

      Estimate active information storage (AIS) in individual processes of the network. To perform AIS estimation call analyse_network() on the whole @@ -97,8 +98,8 @@

      Active Information Storage (AIS) -
      -analyse_network(settings, data, processes='all')[source]
      +
      +analyse_network(settings, data, processes='all')[source]

      Estimate active information storage for multiple network processes.

      Estimate active information storage for all or a subset of processes in the network.

      @@ -156,8 +157,8 @@

      Active Information Storage (AIS) -
      -analyse_single_process(settings, data, process)[source]
      +
      +analyse_single_process(settings, data, process)[source]

      Estimate active information storage for a single process.

      Estimate active information storage for one process in the network. Uses non-uniform embedding found through information maximisation. This @@ -229,12 +230,12 @@

      Active Information Storage (AIS) +

      +

      Multivariate Partial Information Decomposition (PID)

      -
      -class idtxl.multivariate_pid.MultivariatePID[source]
      +
      +class idtxl.multivariate_pid.MultivariatePID[source]

      Perform partial information decomposition for individual processes.

      Perform partial information decomposition (PID) for multiple source processes (up to 4 sources) and a target process in the network. @@ -265,8 +266,8 @@

      Multivariate Partial Information Decomposition (PID)

      -
      -analyse_network(settings, data, targets, sources)[source]
      +
      +analyse_network(settings, data, targets, sources)[source]

      Estimate partial information decomposition for network nodes.

      Estimate, for multiple nodes (target processes), the partial information decomposition (PID) for multiple source processes @@ -330,8 +331,8 @@

      Multivariate Partial Information Decomposition (PID)

      -
      -analyse_single_target(settings, data, target, sources)[source]
      +
      +analyse_single_target(settings, data, target, sources)[source]

      Estimate partial information decomposition for a network node.

      Estimate partial information decomposition (PID) for multiple source processes (up to 4 sources) and a target process in the network.

      @@ -392,12 +393,12 @@

      Multivariate Partial Information Decomposition (PID)

      -
      -
      +
      +

      Bivariate Partial Information Decomposition (PID)

      -
      -class idtxl.bivariate_pid.BivariatePID[source]
      +
      +class idtxl.bivariate_pid.BivariatePID[source]

      Perform partial information decomposition for individual processes.

      Perform partial information decomposition (PID) for two source processes and one target process in the network. Estimate unique, shared, and @@ -428,8 +429,8 @@

      Bivariate Partial Information Decomposition (PID)

      -
      -analyse_network(settings, data, targets, sources)[source]
      +
      +analyse_network(settings, data, targets, sources)[source]

      Estimate partial information decomposition for network nodes.

      Estimate partial information decomposition (PID) for multiple nodes in the network.

      @@ -492,8 +493,8 @@

      Bivariate Partial Information Decomposition (PID)

      -
      -analyse_single_target(settings, data, target, sources)[source]
      +
      +analyse_single_target(settings, data, target, sources)[source]

      Estimate partial information decomposition for a network node.

      Estimate partial information decomposition (PID) for a target node in the network.

      @@ -557,32 +558,1165 @@

      Bivariate Partial Information Decomposition (PID)

      -
      -
      +
      +
      +

      History-dependence estimator for neural spiking data

      +
      +

      Embedding optimization

      +
      +
      +class idtxl.embedding_optimization_ais_Rudelt.OptimizationRudelt(settings=None)[source]
      +

      Optimization of embedding parameters of spike times using the history dependence estimators

      +

      References:

      +
      +
      +
      [1]: L. Rudelt, D. G. Marx, M. Wibral, V. Priesemann: Embedding

      optimization reveals long-lasting history dependence in +neural spiking activity, 2021, PLOS Computational Biology, 17(6)

      +
      +
      +

      [2]: https://github.com/Priesemann-Group/hdestimator

      +
      +

      implemented in idtxl by Michael Lindner, Göttingen 2021

      +
      +
      Args:
      +
      settingsdict
        +
      • +
        estimation_methodstring

        The method to be used to estimate the history dependence ‘bbc’ or ‘shuffling’.

        +
        +
        +
      • +
      • +
        embedding_step_sizefloat

        Step size delta t (in seconds) with which the window is slid through the data. +(default: 0.005)

        +
        +
        +
      • +
      • +
        embedding_number_of_bins_setlist of integer values

        Set of values for d, the number of bins in the embedding. +(default: [1, 2, 3, 4, 5])

        +
        +
        +
      • +
      • +
        embedding_past_range_setlist of floating-point values

        Set of values for T, the past range (in seconds) to be used for embeddings. +(default: [0.005, 0.00561, 0.00629, 0.00706, 0.00792, 0.00889, +0.00998, 0.01119, 0.01256, 0.01409, 0.01581, 0.01774, 0.01991, +0.02233, 0.02506, 0.02812, 0.03155, 0.0354, 0.03972, 0.04456, +0.05, 0.0561, 0.06295, 0.07063, 0.07924, 0.08891, 0.09976, +0.11194, 0.12559, 0.14092, 0.15811, 0.17741, 0.19905, 0.22334, +0.25059, 0.28117, 0.31548, 0.35397, 0.39716, 0.44563, 0.5, +0.56101, 0.62946, 0.70627, 0.79245, 0.88914, 0.99763, 1.11936, +1.25594, 1.40919, 1.58114, 1.77407, 1.99054, 2.23342, 2.50594, +2.81171, 3.15479, 3.53973, 3.97164, 4.45625, 5.0])

        +
        +
        +
      • +
      • +
        embedding_scaling_exponent_setdict

        Set of values for kappa, the scaling exponent for the bins in the embedding. +Should be a python-dictionary with the three entries ‘number_of_scalings’, ‘min_first_bin_size’ and +‘min_step_for_scaling’. +defaults: {‘number_of_scalings’: 10, ‘min_first_bin_size’: 0.005, ‘min_step_for_scaling’: 0.01})

        +
        +
        +
      • +
      • +
        bbc_tolerancefloat

        The tolerance for the Bayesian Bias Criterion. Influences which embeddings are +discarded from the analysis. +(default: 0.05)

        +
        +
        +
      • +
      • +
        return_averaged_Rbool

        Return R_tot as the average over R(T) for T in [T_D, T_max], instead of R_tot = R(T_D). +If set to True, the setting for number_of_bootstraps_R_tot (see below) is ignored and set to 0 +and CI bounds are not calculated. +(default: True)

        +
        +
        +
      • +
      • +
        timescale_minimum_past_rangefloat

        Minimum past range T_0 (in seconds) to take into consideration for the estimation of the +information timescale tau_R. +(default: 0.01)

        +
        +
        +
      • +
      • +
        number_of_bootstraps_R_maxint

        The number of bootstrap re-shuffles that should be used to determine the optimal +embedding. (Bootstrap the estimates of R_max to determine R_tot.) +These are computed during the ‘history-dependence’ task because they are essential +to obtain R_tot. +(default: 250)

        +
        +
        +
      • +
      • +
        number_of_bootstraps_R_totint

        The number of bootstrap re-shuffles that should be used to estimate the confidence +interval of the optimal embedding. (Bootstrap the estimates of R_tot = R(T_D) to +obtain a confidence interval for R_tot.). +These are computed during the ‘confidence-intervals’ task. +The setting return_averaged_R (see above) needs to be set to False for this setting +to take effect. +(default: 250)

        +
        +
        +
      • +
      • +
        number_of_bootstraps_nonessentialint

        The number of bootstrap re-shuffles that should be used to estimate the confidence +intervals for embeddings other than the optimal one. (Bootstrap the estimates of +R(T) for all other T.) +(These are not necessary for the main analysis and therefore default to 0.)

        +
        +
        +
      • +
      • +
        symbol_block_lengthint

        The number of symbols that should be drawn in each block for bootstrap resampling +If it is set to None (recommended), the length is automatically chosen, based +on heuristics +(default: None)

        +
        +
        +
      • +
      • +
        bootstrap_CI_use_sdbool

        Most of the time we observed normally-distributed bootstrap replications, +so it is sufficient (and more efficient) to compute confidence intervals +based on the standard deviation +(default: True)

        +
        +
        +
      • +
      • +
        bootstrap_CI_percentile_lofloat

        The lower percentile for the confidence interval. +This has no effect if bootstrap_CI_use_sd is set to True +(default: 2.5)

        +
        +
        +
      • +
      • +
        bootstrap_CI_percentile_hifloat

        The upper percentiles for the confidence interval. +This has no effect if bootstrap_CI_use_sd is set to True +(default: 97.5)

        +
        +
        +
      • +
      • +
        analyse_auto_MIbool

        perform calculation of auto mutual information of the spike train +(default: True) +If set to True:

        +
          +
        • +
          auto_MI_bin_size_setlist of floating-point values

          Set of values for the sizes of the bins (in seconds). +(default: [0.005, 0.01, 0.025, 0.05, 0.25, 0.5])

          +
          +
          +
        • +
        • +
          auto_MI_max_delayint

          The maximum delay (in seconds) between the past bin and the response. +(default: 5)

          +
          +
          +
        • +
        +
        +
        +
      • +
      • +
        visualizationbool

        create .eps output image showing the optimization values and graphs for +the history dependence and the auto mutual information +(default: False) +if set to True:

        +
          +
        • +
          output_pathString

          Path where the .eps images should be saved

          +
          +
          +
        • +
        • +
          output_prefixString

          Prefix of the output images +e.g. <output_prefix>_process0.eps

          +
          +
          +
        • +
        +
        +
        +
      • +
      • +
        debug: bool

        show values while calculating +(default: False)

        +
        +
        +
      • +
      +
      +
      +
      +
      +
      +
      +analyse_auto_MI(spike_times)[source]
      +

      Get the auto MI for the spike times. If it is available from file, load +it, else compute it.

      +
      +
      +
      +check_inputs()[source]
      +

      Check input settings for completeness

      +
      -
      -
      -
      -
      - +
      +
          idtxl.data
          + idtxl.embedding_optimization_ais_Rudelt +
          @@ -109,12 +114,12 @@

      Python Module Index

          - idtxl.idtxl_exceptions + idtxl.estimators_Rudelt
          - idtxl.idtxl_import + idtxl.idtxl_exceptions

    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 diff --git a/docs/doctrees/idtxl_network_inference.doctree b/docs/doctrees/idtxl_network_inference.doctree index b302e085bb7cbd6bab6a55ab3ca23b9a11a98d36..e50136f712c0dd559989d73c4c0d75ad0286cd09 100644 GIT binary patch literal 211790 zcmeFa3!EHBbuWytWl1ByvDd(2yJcJ6S$lT0yYeftC2X)vWGo}w!roxS(7V&SGp*T~ z@jP}Vj1xn+fWM5114{_p#5lF(+3841Z2zaQ34cUPTLr~Y;7RMk1B?qC1Lbx&FM6#8H9jCQk9tsg47<#N4I_S$Q` zjpfEdciF3V*50r-`HHps*7ChgEqAru=(ZNTwcbGXN0T5A_Y z`3-Gvp;K+tRq@LD$|;o%2iEeHO}+JT}mY-BDx2csI7HV$0jfePqecfH=e{C#xo57EHci~{mTcmHg zy$v0AiC(Q$&Zvx6POUtva#H2|-gVnv*!EiOZA}+c7OL*Hme*{wx9z!c|DoD8FxTEz zEq4ypNuSsImo}b20wE75|^W|0mJ<%H^!p zQ~dKv0gSH)<4@_Wuhz@nA+7s4GGc4$Z9vzxs!ZBc>n<=MYUNCz&Xa-Kg}y5Dcyl_v zDYdKUh)%azycjJEzxMOhPjQ^0s9SkEM=RY#!c0 zFh`%(mz>6;!@eqpzcM=qxCh)Iol|+&KvU7clG>@VzBd+KjTBhiYg39ZkC$S;w;3p! zf*=^>-f6@L>reLE(*;~vtsEk#zAO+_<*;nQCf0&5`=^K7OA2qS7k+HA`?@4{Hxj#? z*NsFnp3Pn#o4u!rDFHw)u2j9%1lZ`1djN~t(?-^xY(`Lm@F#~Q6KNCoKJoG{B_`AFZG88(}hO8qferN zy57{=ggMDwYPrpdCdJ;aeO?PQ;Bx;I=ycmOUi4w&bfj`84GHC5lxQEengC{>M6*5- z4>KM0B#n<@f;)ODfeHP?Lg*itGvM5_VAl*KM<7WCM+mCvG#szpsV=iAd^aFDL&p|1igkpX8>}|f?6LxKTha9oSvw-fOqk=!Pr@K+3yQ#N%9xBW0lxkHNkinE0 zSmc}NO{v=PmbKTt`|nt&w7lxP*D5&si%x!adU_h8Vz1}6yKL^>6JSc&nMG$`<#5}% z-CJ>P@j9JC?wTv}vy%nqimPV6asL~xxax|cQ|WY?JGQ~ptri=trEN3Q#hIDu?c1mv ziczWJHCGltlqWJf`Klj*w^qqwdI&05twZM--M-G&zffRsfIQq-95q*^~$% z4jb4%2^w4H$uwZ~NrqVjfZv+G9%V4)`0J=F+LUC>im8c>$s9iZ{-CAHKjNeBa*n7F z*`D8%^GolmcUBiL<9Y?>_F}=gt2*CuYXxU7{=Nlkn>vjb`f;hVuiA7A&hyyVnVF#( zMNHT^F=0=+4lEC^HnrG-GGAsR%Og$hEiTdudc|{KL)6)y)y`oy4?xN1>Rz|iXfIT0 zZQL$8H#^U5EH|B7#nXbbeL6owgYHUdiv^Z?V0IoX0M)_o|&GSp1o>z zYI}IZJ;7T_L;2muU1w@a;y7d;qy3`LX!oCr2WoWX?Z7(LOJBfLI+usoNTYP7P$p11 ztR-pn&Z%hm1yp>%u1TWmdHj~@%c`VcZiX^pI_CE7e6`+KA(cZ@^vo~>sK>mG9U)v)wCnA?Los~v2S z?Qr&C{|e?nr-(_P_GwnUGOI!=oz>OV;&QcJTy8EE%icCDpxNi`ZN#klNk2-nR~DP) z#jp~3(zKb>(L0W#4%QUWam6+U;?1G4Z>pecgbKgB;|Y-|m8hb=b(8D0VG2Pz-P)+t8e{-5W2n*Uz#6(Cu!gkt!_>UnhTbT9 z9e!|-V=Lu4ZOXeX=Xo%jmavDt;C9X6usQFnR9!5#>y3K1US&He z-txRxF4Nu#>aNtQ_jEmNk+QqsT(iC4(Bfp~%1A>=Tbt}IUbDS8edWx|%xo^KrM~&3 zXf|s#>8VGL=jLjP>-cU5#%n92B1}y-U=61Mn&Wxk8cr`^>Z*G~jKr&uU=4R4DI2wh zV{J*RtIk2&>zQg+Hb6NX?ZGkM8&S9&>uL-?RYI? zw<#A8lu*hd)Kh z0gEC3PXgf$Pz?V2=+mI~_p;jk_v0V6wA{+K&NV=LhuFS3JD8Gi<{0%qtd~4RoLvc2 z$e&6Y43+;)9I!+F6sO}lDldRE{+;vt8J+4tB%bzE8;SynM2REO|GyfwKJ=Z(4(em% z13<;TS5omE;t$JS8#Wb2E=0+3luU^cF2H!@PVr!=a~2qzqh# zZRDwg>tZyz%S38|YdveEq%D4#G+$#yQ^1R8rGeK?BNQ(%IjZWE1pK#9L&p7|vk`&< zGD-c7D47z-yn|8$nQD&$GB);VSY&%;Ai32pkvoH!5SgkcRJU^+mu*^S)1fl^2pfrI zW>#WD5b7=jXSnes!ujlevJzKOuat-xu-|7RUme(6A%yoZ5u3n1oou|Iy^@pgW0Q+d zT5%zuPSn#teb)#?4u}t1jcT#~6=Hnc|B_9k6|^r!$M`l5+8V_g%d zHL>U(Ezr-2A}w(q{ZfgV!F<|A&N|E|A&deO^$1|T%ZdvDbE2LK=AuJ}hxyPIDcSqC z5%c5z3v3#$V15}&-hz@TVa~fLHO#4JqhLPUWTtefv0R5kK56pBTEp$+np51w7CvwC zHSIz%B<4+1`gF4z3D)pqB`OBfWg9u^Fufd&sWMTSFkR1hm&C;{ljglvGzBP$RvJ)_ z50Vp+5{o!?Bu<-gE7fwB%wHA=(j829di)AaJsIhpa}m*#AGo__+VO zHjP%eE~4b8P%F40or{KWR;G zg}Z6U?Ie^;i90Uh)VQNwiNf7nfDnXL)MGR%f(8kIY_=AjMOoD7STr$-$+*`_zzmp| z*hp6g<_tvOFaevuG}NXz88Dui^k=Q;3y>1sG$7rcRnh=#rn0JS{%&G%+<&f3^Avay zQs`fgk}1Kb{$|+GZA?*HAGV8KTL`ZD~bYxL@5mh zFSn4OWYVgPYK#9$VrksJ-=;YVb623`eJGg{b6n7=F-LvFF_&EA-E<5$?!OcN3}WQh z*{9qCp>n>6dVRJ$)&!L3tU4|dH!6OX`7)@QZZT`hS8kIJdbjAVr2BUl!vRn7*sH)? zL<elHuhkJcO0j zLnRi^sL>8iFU7PLJTSZBOG=zkN8Y`4^}fhs{|i)P-2VgolZ1QGY5r&U=fBH7_dkn& z6nsu5w`A6G|BKPjF}d-NOs>B}b;jCR{@3w3955}}{%gD&lI_!sLBe~^Yyc7mP^4^I zjtBMIY{n_;GdJU@D9Qp=&tf1X3^Wky=yr^t-rl;Mk_G%_5+6$>-doq`@A-46$ha?P zZ|a>=We%P?M%OdNA&H7#CgF)>!idXWbm9Nb&uL925Z2snHsOa_YA?I34s)SuuRTDX z0b6z6;uUuaRGualSzPHwcCYwCHgkjgZ8r3V#D*rKbSH{-=lyf>j~Xorefff9N?Y){ zZ#;<36qGL2DW&Md1IZL;!xRVi9B0I`=LUcN7^w<<+VDR`Pgq3QBT}}5X5cKr@4X9> zr`|Oc8((=RISV2NUYpz^!{96Lsl3;m7~dZk@Lu^~<)O-l{8ynLsB#3ki*{4Uwf}As z0rV#{$fKqV@)gZ{jgH$*H|=o1x-*YVFP>L-$gJj((c;8eWIvIy%Do#$QkfcH{_6>V zb?+d#uP2RLHaLz=uxq-QCL5P zEV$Jgi(P0hw5m<=yJaVESTVXXtr3%(wCCVF;pGsx&k`)L2rKoyNGA}^1_1l8(kQb^ zRHSYju19S1nK`iri2#a`OVjm?WjW!9Ux5VQ$0hh1HWC!;Q7Obt7)|d&c}zQrUWIQu zM#Uy&bIkG=^wwj%w|>W_w@7!%uG)aE`ULB$cprVTiG=el@74IJl0M~*m68Bq;s4`U z(EV@c-iDF2`w(+^+mYL~YZqHIIy;>kVaMku)sy0qhahUCz9=mt!mvbEetu?py5L;N zzfl8er*khWaJWQxO`4Y?fZLZP^Ah+tUB1gipv3UH`x z;Ya}yt;i7OR_i(TV#>h@!+fJn-sQBB@7&#B=A>IY;7q~SUT4=y&ornHM)hS*(a;D(ft3;)8Jy1hPKk}PE0{yKgSt08u zUpbUO5xJ|-a#4e5f0(@-&FE+&P5baLMjbe1VMXW=i@hZ2$>~javFU!Cbgun!hwT+< zLSj_}9^*z(58~F8kXX4%;RV`Xt#lS;|He~^jfErLJ$IoZ7D{2d*K#%&Ir{~^^c71l zz6ACTE!4U^Vi}7F;Q>ak;HJXm1lY8zWu)xEqM+?Gu^g#)s+wO4Tc!cJURhC-t%B&V zO^=!d(dZtbWF?+ebwP`$+~@s~t3%D#m^`x|PL6P~tNh zHhgr5Py2Wx-qc}%#t~LHOpsNiz-e(OUMT^=9m$$#3L!=C5NXP+XSzY!G2&NX#GH2u z+Z;HT{)yct4(l-oLSppfYYHk-|mRraSaCIR(V-L1FCceJ8x78e|^3-rhhk2OXDTuyZ(~3gM4G zG-rV<7q~3ltg>_<%L7c7rp+4C*p$Y^e-W2?AmRtJE2UvnQj$W_c6xiq5_fVy9$QQW zIJ%eP=x|mXT?Bk|t#A~-eDP^-!v6*QhYk{uS3(*J1Xe!q;|pt>aeR_U{?y!zqp9Um z)(T^Z)VnOw3XinFqo&2+@IB^`{g-XT9@+w;@UgdYo{j17G-Jsi@fUik0Kl9@-fhK( zm>`LE(gdlE$aCW*2EoLVSK6IN`$PJziuPH5ZEY!>ra>nO=r3blG`QGcaizoH}3yA z9A$Zy_c{!i6To*Oc9nH$UKxgh}v-V7& z(XY*cUj;JzJ;@WQsS||^ZKB*oBW>Kj&SsSA6D5T;{s;=EwDY)PvY9Ap!;(*w$)$wb z`o-xdZN3efT&uZcAzormc6vXKEW_Pa9Va`t^W*JX`QAB_iSiWop%Vph22S}z#U?va z)A28(&otP6bxhszjwmz8bE9NQD)ZohvQqsz2SCjR03k#5Du|`RFc9Hl6S1dkuJ@K> z+7!r3odTtoRZN}HazcV==8zEEV^V&DKMdshYA)AT4Jp_A^==utfM9x$w$eZ@ zZ{l)!qm5j2g+pL_JrhbQ%bd&4W{?ws`%(}P3g=}hJ{1m2e2m!g5-6PHl7gQH#mTeU z$-x~Fi3Kaag$7H{S(H+K#Ac~{@2SnhaPH+kf8l$o%8g|l7q9uBgEV>@aFDXX-to50MYYfyqL}7a(UEch7qaNLR|dNxsiwO zQj5gARYQbr9Q+L=7rz2XjwSlGD%*ScQH~`t#K$9w{7=K@K^`6Swx$v(6II@fsxi;I z%)k`$9kf^Qz!d9KHztWSF?Qj=UH)n6gO{^KI!(Qf+DJ6xy2uhb?5>P`f zMcB(?GQ|vGFPsr`3enHGB1g;M&qdfvpyB*~C1rOM!d@;(GhsvpzXZIFDEQ?;LX!x7 z;jL#87=IzOesb{3^%n6eavzesc3iQ8prR{=uSjVL|9=wv#{D-ZqEJTdih~b zZ%pt%E7&$dU;a3Soar`471BbHM#A+;r7uU0Uxc*;Zbafm(ZNm4Z6kuIfGDN&awGxw%GK4l}hj+9t|PLgYO~J5ep+I$K}BfPW`{X2veE4;gVIEU*K5wn0R+iFNB#V;Iz?^L;pV^&YA ztW$A2PQ}H|Zb6QTP7WJrDz_?v9w^6@4x&8b7bb%pCL_;qF0U6RA66hdV4l%i#fAql z1&rbTrIl)<+pZlJw}1!EAWvc;jP?F00|Mxj?|8>RFakf$N8m@ZjzC;G>i-rBCt1NX zp^)3n2NV%8e$5*e?@7@aVI@Anh9ca2-6isP*h@v2pd7_VY=q-3!_27|7y0nb@=vTVunnh z5_Ls~^(}cU3kQAn5&BV0^W-<2lUh(}a9#_QloP(8Nec!6u1RwZkZ)=FR7?h{sxWYl zBc{iC#|N_kIRAlz^SfEWc{;%PH=_aP$5ogJZp0B;(iunzUN~)#MtzDLsaXNf+9SG*zA8GI$UtjYrB)q^p$UK$$Y&QN;LZ+uI*I-diL${*M2K z1c=|Xi7nYS&_8J%71%buFpJLu;!i^1tdny5RzYtg8Q5&UxpxYZ7|mA~uq=mpxmZ1f z3$*h1(e5ttACq*Omj6CJdZm?)J#fL~M)*+lN8OvpS95yMy$qkC9q-tfdkR%AAQDwZ}^#=6QM*l#yef#aGipz>L?#P6pQl^h%X#mo9Ub8|5x`CuOvE zD5(gzBTv#PzW>}^#zJ`+neQk@7&j^-IJxXK5wA;&2wuOoK_Zs8Qk$}!1u~z+Z5FHm zDmL?!1O##U=<*REDAJ~g(Zw5RgvhhK_I}c$g{sB+W{|PBJAqhg?4pF*s>Ro{*k*)W zhomh#q2qRCRu>@;gTHpuU7!sqx$ZM$uJv=Af}lv9b6HgT zupXGlW(gLclwPMxiRlrjUT{{ih2lAv1xTY|GC?w=B`5O4P7s*n-!iKX+)%O1<)0yo zjwr3-8If{F3c;;4D=vnFxE@4{yubj!0s+bK0etqA!?GD@xL1o_8X9Ujz2GUX2`vV{ zZDbPSV@9!!N6thH-+>ILad)_4xm-qa2DRz0XCYvB?zQ1MPU^+L4@RpeVD0;4<2z&c?^YD98N_c^wee@W*!&RQ@YPUd&fW_d;r#P|_t>zVf!Yx)>e5u>?3PA zI#q3YQjk@Q2CuYmu!+IapJT+UyEyT37AhXTpxYxL8lZs6$X=IOIe<<&*g_ANtL=jh za)h+78%t7i)ov*rZ^{&c5_RN5iH{bLm#ae1VJYwMU6)K^Av58rTaqt}yih6N3ldb# zGlaE>Tzr(xSTwP32nAJOPZ>?6Z=F1O^&_E*AnzSQK8-e1mquiwxDDCF4%IXsCMI*) zGMRAI$%rurJ(m8@$W{`Yn}kP)L?%ArOA26CB;JrAB(x70b8R*; z3JE&dkeX;!TP5gROa&)wHuT>xMDuMwB^eC^Jr)Ras29LFQW~ z(+!!RhBVvKn{4d(BWsGMw+vx|ypXo6(DV}ynezO!+t@D42m>l;%XwyLbl!)#odmjoXCrx@FgUvOR#bxMfeXEX3EjTth z);JsM9YY)iF!>yZ$!D{|gl+-*JqDA+!$jto_85m#;2ByDZS`4L$mz}2FffiH(Xrm* z5on=wNYl1bwP5JKBLApOdviUop%MRM!0` zrNU_UDcsw~3P)qTpBaH{kP(Px2-+tDBnp%vNFLP6-{R1d{iNesS;V^sk8-B00@eOf zj+&QbMa{E;nipk7%_G^4i?i((X4xwYgX%b8c&zuXBP>}7F5t0Eh|6h!WDf{_iHHoe z7(0yDW~M_Nk}Fvu`5Zv9l@XG2Ti}~I#P+bU;b6HroPBF}n2q5q+rpt?aYATm+$Ffs z#^$y@sSyUXK;9+L83X-GG?nlWR|&7nsuFfXCHy}bRYLFc(r3iR!zJ4Rh}H4O5QiV3 z0sO>m;@A_iX@U9nYkXk5E$hIz83W^&vJQ;lZyI1R8o@67h$hPFI} z*5b#OjuK&E4fYO>o*rzgeiunR)U(C^J@4G_WbNGj=-j`y>fHE{!2Sz4L}VtN7V<;o z_`(!VD3VR`BmLx0MRr?3fE)qdzz#di2-hQhA;;4J1V7 z7<#HkH;Vzf)QSz^&Oo%2+!?g76m#Ws)%P*+63=MsHq8<&GKH{eC#%ZIc-4LAX}nF0uTzsPKYLPGMV5((?I7uv`p1fCxQ z$G0(&n3?iVf;Y3&NbGNu5-8^-$p~2%W8W(_{S~4%?ssfB)xq*26ut+A zQ-XyH(FQCe`Y5n`R``;_n<4NMr#m%c9L%#gm#fWRd&hDC<)NI)Q(gh_dYirr0h_$a zU&p%71okCqWGa!LkNOxJ7Rcd2`xQX|P_Q$>M&u(_jEmtx+@>5J4X9?|H!1C=$z>b zW%Jz>pNf?kA0xKBkg_334anv%`3WZ{NF>Lu0Fe2EF%7Gn%4VsgD**g2Ar#HujUMs8 zOn==(e|<&$^+)(CI^DlXBAmbvcN0|ha)4A0voz1<_kyMM3pE#u2v0B0Il4n}v|n+= z{_5jsO6GA0DD<{0cWX$U>b9zgDV>t}(WY>#d8^SpJhj~M*4)a)2iAyg?_&MqAnlp> z*vaGTNqjzm&nFL1;;Bjwtvgk;u7F&z>)|lIS?2AAF@=2V`O2B{LC<-PWX0Lva_ene z7vt>atT_33Bomgl$KVfxf#^XjfcgUclX@VYff6rOB`U=GX7K)O$tvf)a^Zd8e+$|x zL?qkZ+dx98dhInXhh0W>Jh5Zt7PGQ^`CcbXE!{@wCQm&#r0_3Yi(UEIN@7h<;= zE+%#roa^XRxP(CZ61h`(I~?_iGqGzISY)yu>j@+&`7o3ACsk7gZ?2-X&XGdLUuLPF z3Y7}!k!2&d2*Kf{5Cf4)8sZ`cN##y_`xA;l@4(=D9_A%@N*%A*JiG(>Ja~vZh551= z;-c}1CS!h)L*-u8>Ze6~FXa&V&Xmj}it(r+nsaP-@&rD9bmlp|1R*_I|V<`b8D4%5@OzJu)&2Hs4p6J`O14L?=_q7{@&UB-M3cxAUOUIBSJOr z!!*F<%W|B*T*wK7{86)o`kn08?(%kz;Esu@P)`OL5I@G7oGi$98TzCdI8}>$Tz}L8+avg za)p!yB2VaQr9qho#C2rIh=JP!dD2kY@IX3I%8{W}z*o4!a~0Jf=YmM+;ZY8G@PM2P z{G%L)deON9Su>R8L6z7Dq`=H*wBwloqg3NayCAX4WXGCnoq<^BPZ4|Q!ZtA^J-IzEvWKk zHo!d6zYI}I#J;7T_Bl_LPU1w^# z;y7d;!)q!u_)RU8w*%`~FMR=12VE6nBVI4Cg#yz-*O)qpT4JGt=-PxyRwSNQN*(n0 zE!CG*Nz>d6t-_Se?cMomy|F^Nhou79T%3gsnhB*lLtB`r|X#Irby(61bM<{ zZ99vt#S_^}Bo&vNOU1Ic4N1h==k0C8tolhmO0!oMo8`r@HhR*une@^-j-w9N zG}3X!HiqL1LrTEZMb`*jlo7gPz3dg3y6Pn%Hske2psQX=nkKN9sHGOV>P!gdHdZ8_ zR!UvOEagTfOWqIM-}1 zIJ9b+xiZpp(iSbdi`Q&N!q1tRnOUCnPCG*S=98k?Oi7c%dh~d1uBO3`?{;9+-WSpp zrb-*I$kPDLr{95#JiUaev|b%zBwmpOO6#?xass7AZLv^V=b-tAS&?{JNlMGy?$viR z`#nj;)()*JgKd?FER)8`{M_RwA!~UD=FvQCruGhz1GGe2gWO9?W(=gBU^BFl;| z1*k05J<*H(p1aAJ~WlmhBRa$XD5}&d( z#*$@GFSa0!8@EU`V+T{FCvMaWW+Gu;ynINc9-qWMX$?BxD}zd_U0UqcYN7#*?QRnZ z(ODUhXqW1zeNXnGmKGUVX>n66~hRAD*?BJ*~I-kn_Xx?&>9#pD=Hp_Ih&96K8JKdf&% zYC2GgMSrBE!Zr>+HH1jUA(BsUk(kN($T?GzKAHV6iGIGbS_^L)tUzd6fxNIc7ms6Zl7N{Pf+cX;8!7W+QH%O%9(xPOrir#fCP zK;a8fI3-@V7;W%E!jHnsmT>a#KJ$m^h)`g~Mp;TKkl=xm3DaEH+Xy72%r6AX*D;xx zKIj9}ir#8PRN#durNqlw(K3P>ig=^s;k!g(+%MU1r(?uH;TNNDN{n#P* zMzm5w?WPe58TcGkbxH{S!_<~>|L1Mwpo5xZ|7H|U32NR=HlQW~QJ}^S|KJ5zXhCAR z*ouPo+5KcCz@lC$K{Jql$VSQ`kY55hypIXm1o`PQNQW=SBs1a1CL^D=Vno26sHcSe zt`P_xa38iB)oA}~#QV7aRhxF}FyD&8Uq<1SFy|d*19R%$D3~vqc#})ZzEwDXk$tfr zh4phIX-kB~yj3!1i2r9Bfrk)(X=VJ4|MC+II$Un!55dnFko)+>W5kEnG=!#Si_%9^>$Nf8O z+O9)>5{37na7xJY&a#0#b#au&pN-iIP1pyGg74{OH4?bt$4X!fviI0XD+Jlg(4J)` zFcY%t*;cNkFMgS1f5M8a04UK)3DEIDvIF)KzftV^uP3VG{zEn#>#({Ug&#!Wl(6Cg zwSg6NLlmss6no{v?UP5L@SG^B5)08Um8=;e-)ST05F!f@#oL*zO+;?i&Icqf#xs+J zN3B>8=p?!+(Yb2`VkcvH$ZAxh{XZby$NkUPv|Gpc6bkCp2;wnqkqy`>pBMM0-g;hoDzdv&^8#P?uo+ST!5B@bG{5`d{NLGizX)V8TVR= znSnHKBjXTAry+$)n3zqF8tPPR!yC^`7Ot{lK>(KMrUdNvtnvnUGnG}%^Y;*!r#??URj*az)O@I9$I$872rh(9 zI!<<(>`Zi?Oy}d0IR9Z1ZCeo)cqB?G@p!p~93`JtWmI$gR})v`{;Ogb7b=-IV5so-zRD89-}h)S z&c$#vr##y$Fvs_T$g|eoDXvZyTZsH8PZ*G|JgDNS&InZ};n(+EL5vO4PbcClUr7q1 z{-i3~TRx&u>|s&ysCNI;Cu{L!1sm}(;pF|#>JsWk8TUyOf;$tC#M6z88QkwnGE z`(H<;;p74S7w{1H{n~)RDnjY~&+yN`!ag^fa56HK6$TTo43 zKc9n#=x0IcQk~LzHpV42@yn!mc{0V>FvZ@}+TCUoPVc4mvfJw1(`~@>ZtVf`XxXYW z60c@c0PZwHDMj|2_(HZ#<@$b*)e+K36tVlMB0pizai6Ru#_3dobeh$kjR|DTg);&d|W8S zVIDP~|SfBJ@q>N9c{9CN-%1HxlTObT1Kmy3aWY z;A6<5anxsWChLa;pOAGBiQn1{=iO!GZ%Ps`<<5weF=CgIprUn<5@5)FkjF#H-Ip$z z67!4diysE*p!5D0@4R2K?L7Y%sRYje5lD1Um_YC0TQN86$lU}XxfBEC;_7S)hH5Xg zs!a-qlB-0ww$x}M&>WZ$~fUf!-)>VmtIMV5t_iFrfs5$*=Sa??o0y2H6 zYKRz+l+htjYa4eTa+eWTqOLp-9t1M^YpP@1|4UU>)OsR9e@hjx8HF_!@B_`-oO=Mi z8M}7vV#`ctr$hJe{BOdz z5q)9@p4^O7RnKp^?SqY#=kDDzQ3$>j_Xx_10P!`FzC^soJw>$N68Bz2l;Ab)O^hf` z_Y8XX^t~20)Y5aUkhtI&Pp?pn-pBqDQ%FfUpY9Bj^idK!_7UAQQtPxK&G6^pwQF9= zk1z9O=D!o2QmVO2$4sZFfyg#V{wZSY`|C~#t?}e~>HBn z4st)Ra!zn@;{I0Go6O}%)1VSkM~Lmh$VZeR`;-m=*h^wh4nq-bNKsSLlQJgLJV_vM z=QRQmks2+OQ(goE^;av2uzz3fum!uLHI{J-GOmbu4q26S zXtM$3BdyAT8lv}gIVOR67C4(xDGaF)B9%clMW99jR{~7-S%Y3K9-?E&UHwAdF=mhy ziCH3oN5CjRu(@Hzil{hpB1$-NBJ(m533_VI2acIOmSQ-DI8uG#-$)|G&EGcNp)VpR zQ0v(!3{yRnt*{a#E4;yeu8RV=wiq}juL}GzF3Y>J%5n>2c?Xka;)0B&zuPz9yZ&4V zVo^p!c!wn~Q5`yU`+X~B1tf{Xl#raXlQ<4jr&5#%ZUhRNwo!66bsaf2ET@N9gq?@N zDd$SAnr!AuQfPdxOfDtPhn|ss-sXEn$+eoR7UJb(u3X;_a4Y}7 zt;vLvxc4Csqq+QS1~?J8I|TuuZ01sYDz-@Y7_sGrlnohA12SjI>+QnFVu|F~^>)$^ z3&xi6M>9(ezTWPgkOIHn?tjx??0P%)SNJkHo?i2Oe%gN2{K9`U$_36moRd5Mrgykn z7R0%QpBs79Cr#&=w`w#nQ~!4$v3Tn^*+u;0s%)=)bX>#@sYN-8Z%rjhv86J45Ai=y z5{dHYNc2(uBNR=tVdMd{@DTqZ`+P(m;@{8C_TLZBw!A@}bie7^uD`*4jQnXL_|$Wf z5S%FUjVL;#%tz)VeM$CaIIJ0|-P>oADJ3~c3rd%24oAHd?(NqnQ_SEb%^5K#3jJ_4 zaXKE&|5 ztKvo$_Cs~%amaZ9pjUAKz0wvy{wt^ichipS&q+1dDWNo+Zg6?yLbnE=%rZm@@0M=M zfuBn=xW><-M8N;+IsXr3<)8d+1OEN@Zw$5@U^udCd4r?#?=NBplm$VwkN|MSg*Oqq zop~M!)~QjNyN<%*gwt59J586izvmC~l7yGbbU7eAQOZ^LhIv|Lor>FW zDlV=wqnKqlG2x?54%=+yDghDxP;hMR;vXHIdHASK2K!J(PWfD3FAOMCC`Z6NqqhpL zD`E;ggu8}Ts*P^Dc33!f2ClzPVj+z6{wV_ju+4hhV;~rCzsd*PuVfu?6qE3aD4b-F z(j-OK3O=le2z6szD>yfUy}=ayA$I2Zge>O*uRXyAWjmL5m*5CWE`n4S4M-XqYEZWM zfYOGcL&NM^+#&2?jFJ;yE<6)SB5*$?$EOYkd%>v|y&`u{M0ryo=9qII{IB7#*rAJT z-5M${A4YkeXH*-h?Am}p(M-Tc61pWvGoE@SN4}8$tc9J zxvPglASnjwm*X9SXh$j(%Jy;`1}f#FT%~+ijrOQrg$N^7+90PvReW$HDy8?$W~*C= z-AK2iRB4*kXH9InFt1$ZxQlzW4&ts9HmJE0Xf<%zLwicvoNkq_{++~?FYxDOHPX13 z5qzu;Isal7&jlojj5J{7NM;vu6bx>}9Ns{|R!-KW%n;5!RVD5&ku?$DAsz6fYW3KY zrM1EM`U)RkU&=bZ&c^uq!_kbdkE`S}xP4vRLd3?IK&o6d=h>hk7kG6`Oh;Y?EQe4q zV#0$oX7sQ*veCj(y)vmWi@WtU!Z&G{(7aD3fVhySZ%l#5$-YbLK6bpfNbaK_{|yNc z|6PvwzsrjFF(Cf0hCqD$7M#Cj6V7ffqW@e>|G9+zvz7jHDgML4Hn9W+dATUXiIG@p zZ-Sfsd$i+lzCJY%dgt^oXc_C27zK^MXD0|?7OU9YC<2(zJeM`(bowW?W74B&V9?}e zK@d5Vj|?!-PG@hsiF|NWaMuVLEJwu=s5yY?7A~O+Z6w6bX$2zarl4mr@uWJZ<&uoY zCPQDJ{5PZ^AkJy~FqFeOG9guO#XNgD|g5c|>Yv=ARnk=i&P!3>O@t9j4q z(lyj%x?{b|B4i!4_fKaid3qI;fl;k8u&`CK8P|!GF(0*L?WF&oyjnsF1;F4aTSW_1i}lS-v^= zp06L9UJIu(>~IjN2Uf8!<2jd+u+d=A2NNn`NWqz)d>t$~2>zCdK;V0gom~DI5`Tzd zDgYB%LS)O`TC?I}9EkgBAzq|9!bP!wID6&bgvzV2fvA?KF29+Tg4X2{c)<&^DyX9& z?TG@Cph!097nqYRksJpyn#RTMio0^Tq%F(!Tm<~GChYEt92GC9=@QvlOYaT!i8{)ngZ^4T)}RVOhouk0cU`h?g>d`w>+nLQfG@~V zHO~;%BJ!Hmp@c;f`-V_Z1vaqJRQlG*)ABbRV9w`M2#Y629QfTb}_dsvvNv~EQWIu z2XSd*@K|v%xyT$PEDcOTev&LXIm&#=J8!e(mEi$mCtv}q-j^`rGF^B;C~MEJZa_e! zG{mx|<$#%pIcT|B3e{vk`!aHb#iVVraWRS2_>Q_61g5usG(-jtKw)XQMzDH$^pZ;IP+S<5(R_n5iZaNoOt)dpwt*&FHgipZ zo11D=+~mq?rYV~$gNZiCJj-O7O)*<*7_%(BNyZK)vSych*$^hii(q1`a1+Bw%QEmv z_19Vv6_M#gNt^>k9{%XrrDmpSmSK0cMNe9z~o&VChyD&ldAxew=+2+ew}ydpJwgQYtf;9oV7zAlK72Z)ZmM#MPx41dQKT*ajUuTXg)?69P7RQNJ>t5 zwbFK}*xt+ymR+Fs|Am9kBjspP9qTQPs*MrKAz1#- zXotA|nPbf2JDvVX>(iuLeAlB-b10l9`k{X+r}oAxiR8nswEG_6E-fEDqR{-KAr>`s zV>&d?JM_}59r_$}=tWsObS3K!llA_R(p$8<6z<|5DjQ?HS7((15?0X!K)V3w@q$CY zVL9l(#UUkoO$V#8h<6Vj1=^fRCD7d0b5QKc3W^&6iXB-&@lzQOc8A&bi`(@JBjwoR zZLIgEBOxz|6FLNE;L*XwpU_b_J_`^QXc)F*s;w91IG*mzil^rRPq$~p)7%z#bPlm~ zYitHsZroysK`&;jJx0WC4mw?k72O|BB^SyjT# zPzioUmC*bAP{$J)4=08@nizC25gNcx+$N4aA)6N1Ua#c?nT* ziQ2fo--c5iEF~1a4TV#Jg$vOJEF}6UuzXhdal#Eem2-C%$8NQsZST}ApgfdAcghP! zS~h(b0ycSc*ID5 zHWNysU!xr0Tz)nKoCthA1p%RK{vgGtVr9n1h%GOqY%H#s2nYTrl4I9Q$Q;&~hE+yy zv((^gCbm8u$%wv;fH413`iosN!Tw6TX2PTrPS*EZ=!ln}${P>f-b#N`wsEtR;B7ri zKD6fPmH1yGhPEr#u28J8zxr5vDNztNU<5>Z7pUCNQ!??_6z&&qHJXQ~<~!b+Te$ZTP~v)3g0&I zV_eGMWrhs=pP*{k)dUYJ{!S0`k8Z}QI{et==XC@4d2{70k^J=H_<2O~GiYdRLV`8E z>|E zz4`*BfuXzudh;T3ma8QC!&js_+y6~secXRC_4KaIh^yy^bP`qkSByCC-6$5^N@5vZgC?btt zeSsyOUOSOIHk?j>YSNNTX8f-&()J|;e4J0|>(Qwe_0Llj9)oT@;n=uTKb^TK3_U?SO-dHI(dy7tfc6w$O z14N%h*d9x#)n&i~7<1m@B9gJ=q6WNKZi=)%$gLv=MVn_^Z_Ky7)(T6Lf_Id44%NDc zoP9O7zHl(N2MJcHoo)w)$v*hMAQ4Qb=-lp+owPzpvRaMhT&2@#?%1|%b#=9ft3`^- z&81@5+lC7m*yrtS#H{*BKT5M#7MtZoJ{c>;(R$-( zYiZleba7^8diyr|9AED)Ub7uJ!DeP=X8ZDHfAdMvY_$M=^muNrrooQyc3?D~_6&@7 zZBxWlX_G>w4F`I}ggcv?wH%Uo*e z3#fjF7hyJ%o(xR3LFvoq{F9Klv;*^K9yU{ZM~T4vb5>5|0xYpyfZ&*AItWul6K2X&{i{aSf1NdvXt5gqbr&v}DWQtYUK(yO@mr`p|rbFK82w19O&4Jaq zk>gV?uhnfDNX;9Ws&2D3{G^IAo+%~fUr!2b+}}n2XbLq^x5(p0p&kk-zk_L{bjOWm z+PdDIT;#fbAj!pK15BYC#3mivHTFNO+q#-6l48*xDXB1f^v)qfaxO%2I~R$WW`|rk zBgilEo@tB8&oq4qu_O# zK~Q2W^i&C!0qwMBLbw^N2D%k!6Ut-8GJv+8*`$)Z_+^qEw<0T`Mzm5w?WPe58TcGk zbxH_+k=iou7i{F9gPLSNiNYyC&AZ74)I=Z()YxbryzUup%@YOfv-`;u8iC*e_hGA1jrI=`@8f>e zrrkQsFGS%*6ix|q-cdF%r|yk{`I3n@xuy(U>BYL6zsSDkj>7u6k+dbkV%{p5GsM5f zM&KdDI}piFGMSG6@o%(ZL?E81r$qeqBk2HOe)x)15BR@E{Ez!@vuV4I`YkB@%P5=@ z^}MreP)}VPh5Ff;9iW8WpC|yIZdN0a8-A<=#vuDi8)=0gdlB06F(xn*vg_FfmZUF! znPfk2MOFZmXr%<`_#oK)p7rE8;*5YU5vtCN8yyP;sUjS6?H=ttlShk zgv0F)MxpSWD5??*(Jz&(86ww>L*5x}<4Yil|75Z@5xH606_vag&rBB1uwp@=ljx>I z=dKZmoeYK{t5J>iFQNvI`;JY!b&PLC;qy^ACB}Id*|g>jfto^f-eN^ofRkvY1m}c}{D8vL-z(|)CE{k>KVZ`m z9c~jS{2~-i2{$fi8@N&TM8WMgz%AiCBg0un6bjD>QISyWd#)tP@OZC{I74{Mqrt08 zq9z^|2?M8@%Btr1KTljD^NURjb<9qp@S9LLC1!bN z*kG2rFbcCbM4gsVmdK$_%1+g5l>jv#D%mk~e!xa>A#~C~*>5n}ndm&3PW~iu{=+2t zDJ!A^k3=aY9xu0$qvX@7jB1YmRpM&g|B6kEbo^b8!e2z;l=$P~w!t5D631V1DG_dV zOZvTGeny&Ht9jl;yj-1vfZ#>?XvmnUp~8OpDoY6axkY!v-Mgn4c1f297X{{AE3b5J z?__cR1$pMqf69=d2bG878KLSV0{fmTl(CUI{wyFZ)&S2}k|IUUQ)PQAM<;qGEHfU> zvl?d_{*f!Os2F2)%5lAIe3VE7L+d4DXnLNT~ZUjOo~6A zOmQ|$vG=rgw~70pJEiur+v?oYZNQ^w?EyNs->NebuX0lW?liG`%e7Nv&xtQ&+f-f= zvvqGuZe7y2d4pZg{Yo;Wq@EL$YWhmJB$A9UQ6-G!T)7TTpQ z2Io;`!gEnX+{n1E-YBY4WK_zbTUeraN(<1-mUG4I0NSa)96}Y%av#q-3heki>&wu9q`2*Yj^uJFfc%WM# z+d&@7y@zkb%&{YP6Ff>?3deA9=`zJ-v~d}GlOi*u=cQX)YT%yf$}$t2G{@*>?HmGp zabo%%i5gEjKJs3TpDZ=UM?rwFa8e2aVj(Jro&pmEO9cvU~wC#k|IBulTV6EUfpXUr$-5s zn^&R*M}B5{y5L;Nzq#1i58tam6?EGOrgkazv|OdZkLfUCR_rtwfs2C}Rg^)*)>L1} zR>7&TPzTp}?%qAPz_>vk>Qkb$2r+=Bs<>?m(Z)py?WVU-U95WL9qc2emUcS#vIi9B zFk#$3Ik5vzZbn9d=i`R^gN+psnkWR{io0Coy)5{87VYnUFYalHdoMih@fugNL=>lM zU%Y$zUd#Kygjr4RwZfrm<%qUo>^}CFnDW=ML?TOH^{<>2_>ukAZ{XSpfN*yO{-UwsI47ixvfHlw! zttE=g5;0E*J|T}@7JOoT4KMcZVE&Mf=`(@k#$DL_q0k*}W+7%)GQp~#%Vy*)5m2bG z#OgWrBHNYK#Fff2%CD`aN4V;_+$t?JS}h)UD}rydRGRoiyoQ0s)r1y#=17g<)Q|$8 z#w5_+dfHTP7o~0iMdZ{#%UN?EEM{i5!|df~x&c2lCt+2EI*^8i6`?aD_L8J0b(@HO zqwpc=Qb-X^FL&5(i`F1kMc~)!ww4f%7X%P1A@NkKA}Xf8T1kZc8&4%RdWU%T+=Yr* zbOf#Ebg$)XE^_t<=Gc_A$Q+xjG+>jIXOk~^FpYX;MNPH}qQmAiCU@xbD%gQ@$n^AO~Ce{!2PL<-dco-eEGYCI(R1&TA~}Mw!aE;XMp=b|yTLp}uPm5ukk<2h{!1w;|E1h6dx?!*7Ftb7j<8Lu#x@ZIw+^sR78f)NmR~uKcrUrx?w|5Ro+`Wn~Ds(1~!1 z!^Mac7tE`BMV^g9e)-91MUp;Zw1IG;P?xIUtWMrh+l~NsgmWWW^D=mVLwuNAdej{fQ^UwiAJs5B&JTv{@zc`SM93 z`BULwAqdda(qOGH12m8HO)GzEBleK>bQyU5OU|<~9fs~y5ngVgrwRaU!TE1iY={Yx zXeUjO+K7y~OGU62^H#CwpLPM8H#XBhX*aR;d4qg~HllEn%Ygs)%P*+63=XPcPSU?UHttxSZb%i0Cnk||=fDYf54=4a~m1Z`m& z@;bQMidg|k;xHv7C+#E-XOgKDC4yTbg68-)6IbK@kJ_|Ihwl^$??&O2@a5fP17GUg z2>8xDMhh&JiN)+f`HTGk;KWncVPGcWvY7X6?iTajVGKg41`w9wc1Abuzuk58M}UCN+|Oq1nLxE)o5P4zAhX|` zJfWjHQOF3ijsF@NY2*I?uo}U+9W% z2Vnd)))A?c3-2=<j{lzX_Vt@7BY{Y_V#LY%WElTJ4F&@a~>AXByGh=ns z;v_Ce=iEp=C$)LZTQwlqI%66_i{Ix-4%jKEvb~od<$xVSd{JRLTT_Wt%!;Fr*Lj{2 zjdi@vb5S(OmXfY0B3|d&?DG-D>y)yyefRKe%R7!~Wo!l->2EN%$e$*ZSFpolcF0(8Mq?%KFK}b6@ED?I>Ih+ zCAuo5Ec~w%`?y^~v_d-ZC0cc42>#G#IVSwC1;P)G&EJ(ONT@G#g-a@MNz1X&6!>C^ z+`7V7t?0av+^v_j3-b!mZq)F#>(++!h1KsekIsOHaTV9}@E@vYk3Yr( z9DSGL=-fP19!S6d>P>h>hMc_ zn42A4m%&^f#R>kT^7tQhwSgr5lS|^?vr2+uDFR7Ec+;9&0&{xkkn~(lj2t2v1wlU~ zK{yKLMiKOLw!@Ukne~EBxDTA}3Vksyl)P%ca5*s5t<~ z#au#LY$U|i-9kJRRB{0mPojpFn|fT5@l(7OXrsx0QwjoNohyNg;|X2?0&V>FZwz(= zv9O|ZpGx4v^Vdv0Q?OtQxmZ_RIJAcHeug#igwu5CcxwJ|uG*o%7~H2;!`%$!GTjXc zAINeQe#vl}WkEe~j;**IM5o}=HA=36z!ZGa$zk_9DLf{R5R}Pad)T;LBbV0;!w;KX z)Sy#aMF<@+1dW6{*H)^HZo76^glPmb)03|0W4*t%?rofR9Jl=)4D_36gyZZz>p-Vl zc5WOz4w;+W4T?xG2(h!?8r4s zo={2Vo1-qAk@v0VWI%a5s$|G9+zvz7jHDgMLE zF&IxE-)C4o|8)Bh<~1&d*JqUjT@4`_35PKM#fcE+CvfPg*z?%wOtVO3sgZX&ch3}@ z*@CnEz^EggjZ=&u-kFi1kV&imQJA94@)m?{TU8;NtU|3%;QfglYJCFl3h!zfWoM#~ zL`;JNL&D{pA$OA_HnBn>;jhB1H^Pwc9WrLyNIC&;cx1FeWHl{zuoFumvMhfE5@_(t zKC$#+UPO-CVx(L;c``wRGOz(@t<7M zazbe)z#Vy&vgg(1?lRV7%g8N9HYjdmM#OU2Ya)o3Y*${t+W2V8rJ3kMzF$HQh4m^4 zB3(w!UD7VO6a=gFBSWy`c0!jjk5wpL;pw%IAcgI|BmRFCYg5m;ERZUtG?`GjM+*2`<{81?GN%aKFR_x~ zpCN~cD6OJsk#I!v?0$W%<`}q4(@-+x3uKB+0S+4$3i~w5us22z z+qkz@uNSgM7&#w~1ckkOc>FmHK)gWII(iJ<;VKVp+*ez5=P`_=2v{_~e2UWn(R#ik zJdc5mG&SZ0wHO1=YO6zR8Cw^V4#qj?iW(SMo&sx!GqH%HgbB77r9*|Oy*z;yJ8%d# z)1~}4z`PQ015M+h>nX!>gt(k`x7BJaVfRuHU1)jyR0x|g?MioX5tp$qVW-rEk2wb{ z8|+jmC1>#5G5{^g>fbkOKouneYG2Frl&Pas5z6vVl-vq!!LvlDt#zgD6t-`2Yi&<9 zb;WDVH_)w7P3$z5mTIiW+YS8N=ysZ2p5!AYE5<5DgI8KO*o>^st5e523l$Gv(8akB z4NyR3WUtG#6hJ5K2&0F~)%HOLNitg4pVZ}8g&^a)NkhZNvdY#!FG%k&)dax-(({DC2NR3!#0!?8!3hBRB!n=HZ!`NMiV(MCD9$%BgEfw@=lnIWd&J1_ zL?=-aM{ALeE_#liS^KG63MxxcB~t%8#3U}CwrQY#VmOP!e}%%yS#uu9U~>#*aTvN< z-N$d2b!{iFUCLtS+G}e{j{ytVX8teVc2xNmC5Ayf{h$v9b2YCb`e~V)X_LB}G zWD)NkJj$7}3g+qsjv6;BYIXuO2eP8(k!(8w+4cdl>;i;Ab(}Cf)_d0xmaGI9_SD;i zxSR$^_JH7*h{!;Tv12Apk=@H7c{nR1uLmT%86i2hWgT*xXW#fSmJ*iRKG`>YhS~DT zvf&dN7AJ(3<{*#@ZESAqlNw=A3v_M@oiXs_R8t9WAYCx-{|x<;Wkva16n+qeGc70z{?8gSlhXz@W48jWMiPf&L-V>%hfol00$Ng8c z;{I0P{!3YLUm5Oz$?|wfiy~e+N`!?q*gH6Sda$kfoqzCfQZuN&$2<2QvUcw6=-j`v z>fD3~n4e#VXqR8We<)h)?}7j`ItSp#Me&6xKt`nT;)iv~pNf2iBD9%~_&&uB5X=br zBb{q~{2~iGHsl%fLhyVZ%Hx#KIF<}$RTuelLr>M{W(Sp%R&0oaN}`=~P^pcjm~85T zwV1bxMgKaYH16-P;Zi?Fx)X)3M&SWQzl0ALsttUoE27|YiSRMwZgVj%b4&q*vLDOL zO+rHQrxFS4wK*GkgurtbINr}hVuI%+_yb9e#Qru(E?SWkKp{FQfpT7wjF8bP_Pt`$ zKTOod{Z$)Ib+F8#a0i7`f`tpw1}r4{D6o81IB&thEbxFNr^y)C$t-S@YV+6LWpWhm zk|~pVztN`eLck_}$)91}X9D|@G%}UQ&qsZX4GRPS(|$$ZFBeRtY()OD72{%f5Vt9Z z$HT{VpG)z*Z74P&VJ_!M=FzLfJ}{}ZxNneMH16QOxj`PiLFf7Jqdpk-f5WE#bfxhk z6n-}fr&Jmopf*Z_V9k|Aaw(bfbgndj||RnJT$IzcX{M z=9wfKh~xKgxh?y*hHEb2PA@(0aa%EBG8VfCwZ}I+UL|<9*lHm7DeUM9pfp$9T9>Xm z#(5WVRIsQl%1=SzF4B=-(ct$e8u1;hM5h9Gez{mK$aK=I4ysU`Vz7i5PTr>|1EM8E zlvv^yq^)7i;kuj^4Y()fh)&dqf#JN`aX%@W6Yn@wPuzxoSBYO?e z(dq=wNn7z?79N4a%I8H=vVtRGT8g2FmMFU;$ZRbvkKjQt!+whomcOtWEFmrJ0YYDA z<0YL}yJ3~jy&6C>vR!AyRv<-dTn&q0+@MP+4@%QiIdH|0sII|MCX>XAk|w(!8_364Sh!RKl5_ehVG(;-^cP_&-5^ zQifl%l;CYWOBT82>6Q3jB8Ki%tlgzpV}JFrc0ExL8R!Edy^Hn4s#A#4MiQneEp_VD z@^W>}tz3LyjfnTQ>YpPiD}9c&G-h6rX*G}UCsAMm1tt%y(Vk|m zv7kyY{?7yd&z9_R{wo*Whn$OB&}Jbh+5X-JToc}^dhInXi(N)_JWW#N7PGQ^`C zcbXE$-aUEV?tJAg^?LU1>n`qKJ09`U3?dV|3eI)puTsJURHAr)Z-=8kaVB={0*g%E zV?6;XB_Fofezj_<;LTOE);Ut__{%Kyx=^W*ZdrD9;1VQA&k?CG-u3T9_UsC6G`><1 z=p7iG?SEbZsI*)yHV^MWEH)1-r^OMA+btTOXfo#M{44jWRzEG`dnt#=ccx^1Suq}! z5-VSMP35)5sFsa>nbBzfm#7++0Q^D4*=B=nbSk#;jAte%?;gO(n=5aL}J zK|^2@;`RCJY^^t55=l9D{PZ@xAJ%&7@nyBV=D!!b_D;bM^xRtIorIXT8f5Lqqi z3my+$cT~e7l%z^PJ!CDagZ)1urpNs+C-$*ExTxVDLss!4KAMfpd0Jige*Xxn&+xg7AHig`&6yWTa! zL3eD33Y1b|hWS|`HbW*h)@EwSL55SeRbBI+hBBDw{dH)OXlatcEo=g*4zXuLV7mmc`diTgj`h%ZnuqGO`XFOTWKs##a2D$@s+BJslDE) zcafZ)j5ZI6$#^n*)Lp4p@9BC)XJ6%T8;Wbi*X09ws>_j!d81sX!PU(n-j?*@1a951R>h_VPo`5-mKqj|w|zOi0tkj!Mb0!tw-b ziE4|M4cLdKwI^TLup0O(MIPUqReOhMk;A``7ckM%ho{*T8LjA)SDxF_u`zp@69>E{ zcCZSL+2N>US=5WuSo0hhsu}AenRc*IFPI4edGYcg5gR`VR``i8sI=N8c5WT`?`X%d zp=9ywLm0X0+7WOaB8BarI5Pd7LOLbfc?9`}2xg`wL?78G@h&?ler#WoC+i{&CKIwa z5NExQUXq_s-v699?Wdi?x|T&0sjHf}`=!-#53?%RUsQppi{1CcmcO)EAl%AK{!C=J z9j2k3&*zZvOj6YuQwRTS$-z$jm2(%ahV{+|nH56+OGLD++q7W&)ffJpB-)AF`(BM1|GIOXaH`|w=_vep6i$g3E=C)?knmfKfQgqa(yoElXU( z%Lr;H;*Da>KZn>F_s_QBPRGbIQTPlLPKgmNIvb3Tz@sqo;%JjM&@I;Hu4aQq!Rs`G zpzP|qhIq0A!+24Y~DM8J<$p+L!APUsj(;vLV3N1k_mse5HKD(c+1X$E7 zC1?inWg97nKz;$_P-TKPL4LXnO5kff$xQgM$;iD{j0o5h^^~yRH3Go{?!#828tuQ1 zcpvwBHtp77ejy4!fWj$Z&O6Em=G47WFkdq97Q4jfFS0N1qp*H%ByEYXn72yi4DoNb z5qJpk4n*=cCi4*>{sUHw2*eZhl!(86Bpm?E4_}e$0ssFH|Hx8n({>&8TTu8@D4Y`Y zyt8ajPhA{^`b86Y#+rz2U38nc&qHnvhLlbEJ*_CvpA$t|Vm|t%5;%kWw{4^yg8W60 z$Ky=kBY^x5tQZlHC+cY-KkPoAl=1Barm(k7=!F3Hqr_~_7b$mVFEKDyMD3OaMdzT{4&YT zT9Fk1C0Z!~IzC8tP`8QSD0cnbM0MPMt_{aJthS=?^(dSYR$QPqu%d2=f|Z+MQ+&7$ z@hB9Y6Gc^GG5V#FHAAFpBj^w!FNG)$Fj#(OkgHZQ>e~gw<0URNwiXebHYY`Kw;|dmGu0N5;sVFWz!NJZj&hd zArwvtH!f%!xKZ~+!RcS|@-Vk*_JoMr4sd}vvpyop*JBH4uPe6WY&GHaB>1_BMln*C1I++f;C2{`4Bzmb8 zQGrLIloF4ZTgXxJX;nrw$Nv%H3R#P6TBPG|3Wcvg;gtB};zJ-U7-;a!$tTNip`I>nBL;QMp2-lI|@YurW zo994Xd5?}g`frtQD52Kh!^8OV{KNQ?Am{F>fJj|^M8U(S zFr>duhO`&m4DtD9JOrO5q&tF;rg)AkX!2Va;y))tygLffzsc=)Q6k){xNWQFo$Ytv zI5)UJ?kW3&h>TXVDFkkZyrd9HDVB5c4K+5M04zMZ*ONz=G;dzZ#<{5yxG>T#agsPE zA!X&bul*#1a+M{$)pBOzN*W|yLx zlq<2-TIry$dZW!$Q-&A(?(IUflswD1GEJi~$!#08%c+oh4XM^t)G8byxe@1xFyY9H zu|CUFjIvr>48B|C6aXzx2xJ=2WXmi=(XSnr*;MU_=xW!vu z$*Qej)f%%Z)izUbb@Z|r@Z=51LNx^dxy@8l56g<^fC3GTYPwT|2}tX|;5u_&7hH7@@gP zLD{)Oc=BFk-8j*++%uhX05n%N@5*9rs@fXfz8m8o{vE|&=v-*j?=pl0Kcnb*Omk}u z0aa&*ewL*@>3N`$tPhE&_h>|(;7@Xqt7wncBgKGWB^j&I;T=)7hkiY}$1W-QiQ@>B z#%NP$K>AIgS+!d0F0v!2m0b$okkDvF#)nNW#OO}v>MfDIvf6k4x7emC?WGRuV$7Iu zY|v8kT0|}ORw!OECQLAM#cUkC!LT9iF=X7R;YSS{3U?F+6e7tL65Ite#){9bcd0n7Q)J2wI3S;E{8KN}=MTN{N1kc0XX1f?JaFl$9ea$Hg z5V1wbpL}%)C&EpiADd+oohXd3&3P|jT*0fQTURyCZ#9QS&`;_H5CBA7@;JhMi znlELsX(Cqn+hNvxp0!D?=)v!)IjKTvaw>%h6+)~s$fpSOED%b7X&)&mVa}|_L;`(h z0>+T{(>DcUvPA;@OD3T5>W&~u>pFIS7R-Wn;j-beni!W6MrLxpP9#O%)hz4?Zo-Oa z{9kB{txhB%R3OL7&mk6hx#QZHesrZ9Q2)gRSo14LO2!)mN_p1ldr0?Wsul+XJg}L% zEbGN>pJ!SY=%0~C&M^mY>imX0{kEX-m^)m~YIE(F_l8qK$W1K)5e!S-3d_{FVsa-n3GO^M7u1si1#YV7` z6k9;@M-)$zsEznlqv$+BkoGvgkOj-&d?(kbpGV^{GOF(O1yQqz53wRnd>)dgwc`!f z)JALEs;RFUB|-IfO+x1K*(~&n2phS#wV8xrVf%@IQHd%*!c-2Fo{<>c7Jf~aO9^Pz z$nE8mnUIwtNf@RS$@y#)$E7r~IIG~vksAwB7RC(6`8Z*<$N6ZM5e3DUyr`Z*b$X53rMR1?1l!HFNKcvh0fhMGYgzo@j#oP-HI@ zz=QC~un(GS52P=;mEMrdHnPilRi=_8mko1$Ng*@jd4UnB(PbiVo+;1Ygx2REC_$%~T=Gew{=chUEnNoGD#=DoKL&o#`z)VB*uZJIPT-~ za~rV*lz&?%>5j8MP5mvokeCPB0(E{UIQxSvoQ*6d@4$H9VCJSfQ48>p2ra(v7*#1cd}UTrhn4zvSS9n3+-bMkpg?IV;eU@7`+?Rn-PPOpu`7U$%?KNTgV2Hkk?_TSbN$?Voc7c2+rYgmH6oFDlwOpg49Ie7nF z{$YHJhvB4k&HvYANJ$Rf5>i$N@7Izc=5X*9h=do4;5|X?Y#IN$bnrHc&3TGYzt|4m zd&jO2acE*6t;1@6B4xnA-a!wjoc*&y6SUkb`&BE2CgMM8cJEm5<6|@e%S+Tvqkg z%JFW8g?gtC#(9lir@zvGj|4U|vRoiM@|q|K!#g=;g}fC}HzM>7Awu_N6(Q#yY9SoV zV>wD$t>NT?id5Bp3qGVZay9`?u_1=rOV^Yp8vmlf_L#u-XkKi|KiFXFymY;Z^@6d; zl?F}8qVLyn(#WN@d&oX`&VtvDslANBsNz{e4oY)eiM9-XpF-0k2U^rDY9T4PsNn&Z zk6IH>SazT{F6!N|P}+!stl`3nm%IYbvyvQXOK?`5HwQkU9QK7$urd7hDebqxp5dK` zdlMlA)}Xf0xn`&Dw$`PWr}0t#QKrJI|9V~-Q1yu4s#0L)+@oU7E#;ka6h84V8YkKQ zv?x);6V<;~=1~*^j(FT7CX@~#;y%=jf$l08kOW4pFrisj4q+o_U57k93#unq zs6mB2bw#x;FdWqr;eEL1^=!+Nct^Ys)pCZzMRI8Jpj*mCF;41-1`$%c1->o7xfQ(Q zG0qNj0Xna(qrFI~8d3}f5xtzw6{xZ{s&%y1#iFOR!zM>UzNv2>M`o9Pb#rb|$rCBG zmy8q8^MTo6v}R9e&8}8xapxt$4V{dQ(c5BeN5t4gvWb_wB|ucctntcvVNjG3idK@;vOErP;EguA{d znD9atCa9Y*Ib^C_@I3P&<{B_?6ZYV7@;K0;EE_OjH7hPc&qhpN78Lq?77FnVnIsR@ zU3iJflj?>{P;#_vvh+c~jK~rFKbZo6ydfKs*&HFJ|0rnk_jzeTY5Nr((Gb(W*$gqg zf}#cG-swp3AV-`k)8R<*vAfE}yUWG5pWe_&)X;U92`$uduN3)|`acSMQ#rLvJZctp@2sc55)fI81P3LUs?SnA%Xd zKOzNCQXUaTCVPO$9DvjXqC_c9PuM@Js86mb>q&`rMWzilC8G8y8FI8G3P%Crut;bX z`boEPD|Z&#omwBY4CeXwg`y1b50tMY$6J2hZ1>wZm}(<`7loaohBV?`YjzhQptPM5 z{p+J-eX1lClsJJV!%~(@Pymsrpk=KL18lBd9DttHj{q~#3mB-|wW>IS(}!-M0R@OS zYFH-n`7T9MnX=(duv!okiNKc;+)5=t?H=+`@Z}AHvd`mK&Mw{wKCc441U9ErJ(P=c zlxcy}I^eTP;Q+5x>}bVnNZBBp>DWu;cTk8}t!~2t&t=_Ej220BJe=&eu<6B5McgUa zEk3W*+gVE#@}zKHwOy{-QB);#48)x)!?sXp(l;QdMxrn_G&+dN-x|AGtrFP62cxt_ zZ6Uag(^Ltu3z8=T$%`!ZTDJLAu|{`hHbVMB{esL0G8QSEh}9<_I4m(F!rO>x26K?R z1N4A%KCwxk0jPmTj$&QeUhFtf8l6J4OH@Eh9{!Yzkn!UA9v^n9V^yxOI!|8GfGc}o zuoxxqI#isiqw4z{^MfjbFPs#qiC}dEH*1Q1LYC|bM8s<%96K(Ik;zqb`@LRgh3O<{SwK~&ceB5feNF+db<_kuqmby0)uPHh^k2zphs%N^f6th>Y zWeWUk*m$FZ`3urO3aE|Zy2@Gr=_Hy$eb<`qnIh&=Z@tK@u(SlxIk-CHR#Hd)n;>l! z`Cb|%Ix>$%u}`+9ByKd3%A#mgF?fNFdUzpX)sZo474i9Uh(lAzbb#$5?p9WpEP z5~%4+r+XtZIdD5oN0BxHR~c!eleoDw+En%i4jN9#+>j?*!4Jju_y<|G$B{#o3U<#y|FJ)n^TojJNg!#u3T0BOTIA4S zcR7PgV`Qy;Ki1k^XpfWVYzb)gWdbULR|%3lypN3?3MQbrJNufg?nLr5HJ2VgMM$C= zM3w;tFFo!>VK!)*3)!pMlp2_YsAI%14<0tcwos4eOxefJugFl1`O@zWhnB2PjH%>c4HHrqL&ittiQ5R zV~pXW*|OXfxMXpj6+Hb|UY_0uo<5V8r|0r+A~SCxwT(?1$S9NFR5WJ&r}9z(*(%hH z0T^DU>=o)bUVWG6@cfnT4pbBSEFPJpc1#ts6u&5h;)T3IaX*CO`Mg5$;hc9DlWgrr zZS13xa{1vl>wn^6&`Ze)-Se>U1cggHq1zt3W+cpL7(NsUSOR|`K?`(%i-gqRlSt|B;q3=m5IBgq9e4eHl;* z{~%Ptck`-*<4_6T&Z!doZ>o#QTooqYk{xk2y zIDv`rA9*Ln2Bk69AzJ3|N`^ZizTGh@Xyp9d*8 zke7%AJLwWJ5Oy^pox4PB#IG7f=Ys@kkMrwUungV={vsMbiN<3VUL`()s9D5^SP>^a zw@XJacI&0|*KvMptN$4!89l=kD>9)Xq-}51QD|c3z0rfSiUYj zsNm^n+z>suG>`CK%;USL&$F}pEpCL*V#@5||CEJy5y2*>#qTov!h(H!8k#D}FU7r# z0}BLx(|LvQFE=L>JR|=-6XJ4u5Vk3&$8(oA&lUMTH4&Piu%PoiyVYv4kIk(uYr-Kx zmMDrg&aKuk&-p*%!5-&-v+ysdG)|-O8)%$TX$S$$qBKaXh0;iFrBcw2-^r`hPI&kx z_Zl{q2$%m6e!(vV9Ho|C#Fx=&rV(I)(u?FA&!GXfC+g%4r*omeh7T{)8W_M{F zTv4p|I*2fedYeK}x*RHjO0Kx9LM|B&eWLt19vc!D0LSKvfvh81HSiavs^}a zgWGR;!iS$alvfra^-jqlSAT+~(o9fR2n|Z;@(A{X93d}MX<2u8@&OEBfk$AXVS@Kk z^M{M4-uLh^G)8_Mf@3Ix(s#UEh=>vq2E$-W(ZG^LovlZNmBiT{CQG-pJj?^L!Y(fI zWGT}>Y0p6-TDk!dDxrO>_gRcLa5}<&-A{O$d4_ zS(-$Sa>-C)*7M^+cHTXq?A$*}cFd+@>DM47ate!;AiMH0`$|{`Hs`C=LYduw$@2j*6CcSk6N4sC6)OB8o`#8jlgi8xGd7EvL2Ja36ab{j zb122D@_b0FJXvuelZV#3lv($q(d3EXIP1Pj>5I*PPH-GtW zr^KxLVJOiIUta(tp4_Jvd*_q%k&-WmTS?reI3v)&4tC;vdn<5xPNVjR8a4hjgj$s# z$btX{h;NeME+8bjZ?zTzX>J#m+s%R1*mrtBkp0_q!rY>G7rSVzxiTeg2`|s%?K!+X ze|kV^%nFS?jqSpmX_S#8_LkuId>CCT9Yl0C+U^3nS&%m$ga87vQK>orI`A%AmGWIe zK))LSd~E>mHA#C2e~U0I2aPfzeYHO$tymc%HaO*PS5FY4Yva4ApX=|Ukbke)au>0j zts-8th78v4C&l0no*l?^Q9Doh(cRJoG5<&)kJaM(Z!$oRG1iDw&h%o~^nW3=e zE<(K9RC>lmmwUt$Y!diMgLd8g-9I81$T;u^ouuv+@- zl)uYfYkC|X-*?qZQ~p%VUhc1;`OJB%w~8GK-au?~8&9T@_pNHvpaxI-GtE`hbgh8j zof_U6_|tu_zVOZkm{_ z84#8qV8dkh5W7sA+R0BuRz0xaJnFi3zt*X&wMnFIu-CdMxQmE&(~_m6>Q&A)-KG%H zofU*rQxG;~2M}0pRTH97_P1j&WczX8IXc}TU#rlKi#vd}n59nu;@Uk5P6uzOw;EW! z4b|uMSBU5?npKdT)fEV03wgD@!O0uu{F$!Zt(fd+0J5E)EL*^xCWl{acpmacA2@LS z{Q1T1IwGf67dyR`12y~H0leuR82G!X1tWqM6-uK)DX0hj^?1Ip|KL5K>rAg+jewyi z2Fx7_4CM_X(LH1L7Mr$L7r;8z0}Zd;0-}3Ho9&98rg|V1%5`B6 zF8DXN>!<~_R%tX>8ZG<}Ilivdp((K4ZCjXdXZx7nE(mrLe-~dXtqwwE1c`60HjwwV z3O0&)2Wm4Z(fUlk3lK9R4wgcH3&UDsbz=#(*@&)BY~%l6Vdau`cx51^-%m_1pj} zoPWL0Cz!yHMG6YX?C@maE0&yHzy`AAL9L>Xnq7AXPe9{^o>B}OKSpnL{bdWyp&CEm zN)N^7lJjS@IQ}X9IlUc!9;H7=ehhyO(Vt(!(&(I~KYv26JdZzpf128R>s^K-dN{?c zPjSmr-0Bp!IMr|LePU2z0FCY3dt*U%O^~?j`w0?t?a)fx_jd#(gE8JwZ9=|i$QXrq zLW)4WCrA@~BHqJPgCw<=J1s42{OZk-hx+a5P><6JDmS_@)IV0Jo=1zw?r2}~m#h2& z)KnE|@*#r*e_OTFqD;aV1D2|-N9FTp!M@)dJcOx+us2LzaL#410_rzvZ54XFO+RKa b+16aGw)!x#Ac)>2q)uDo_->?JFAuZ*@&tQYn-YOVTwxY9ljU(A=vm0~@tuH3oOKAApmmMe|C zpkLbv=bPnPRgsrgm)4Zl-nlYbIHC(y5 zHCJfo3e9G{JlATX{nXwQ%Ebn?ZS8!e&}iTx{=K?dSmOU$S8OfoA9IEIz4dT`zG=1B zHVcdNYNd2aX}EL})mS>a{j|yFG{Smga=Cz7=F5f2dbnI`OkQ{Oo&%Lhh_5kOE;bKT zW<}FyRnznJ1{go*h9|VT_Io7qMg z9noynEv%ht3Tn@;Q7#oCI)xDxs?}Pv5Cd;}4MRa7B`AMtA*}&_&-D{h`@{oFmFbz*cUR{JqM*cTOekk8)6t(CYOvppKXTu<%8P^N|0N1F{mvB?5lkID_a1- z7P=J8KZ!RVI)K0{$9-vad&pgkltt2OTQ-rOY)WBifx5e-1yNd*9G=KHjI(!gygj5U zhT8GRHajoO#?FBbcG^!AN)rkxzpotbpNHmLX`dqhIa{dCmuhuGj%k2D5gMdfs4s@i zmG;KjrCPC7358aOcQiB+J}wtmN-u7&!N1VyEA6uq6bJ*>y}AK>_=L$LZw;?|rG2Ke z<54*q3@fEI?R5*SN`))C7gM)At8_MX*A2&`x*JKv2D0XB)uuV4Xf1YP`$Q<{!eYI! zTrvdK-nl!hV>(#soDYIlgCK4qJ7`LsM~VYFFE0VwZ!sDUzEG(Ig=(R4uo22BY;-KBRfA?J4EC35 zl~8pe=J!Ib5jIIdF>@in6RQB~+e$dg2Lp;})`GCnEHAN{Z5Oi;3IYEp$3Mykw}xS$ zbYFwYrkY_!1PiSyvqiXRu~e&vWLE%IOvy`>9FtR;ob)jG5Qf2@WEuvg4?-!N0J08z zw%6Yh3L~$vU5;4mnXdPfDB$7j^{zAOJ+Zxh4k{~b&Q{8>tMn|V&C?U<&1|_DE*Y=e z_uM*Ps)yydus$B_$p@obrlzJaDsBo3jTW13uhW=P=2t%0T{_qZZVC4VH-^pTctfI*<`n{<3X(5OCS3 zaeag^G>Vz_xrazJE2`%YT@`@F*Dyz62EsHd)*2cV?XisAGn9owH4oSuF8!}=b~T&j zfwPs;cW7eyHfK9|4i~cz8+JK-{EyuVr;opkkG{x<77>v}_!T*Yw7+y)c^;E$I3C=R z9}k{eo~susaXt289&$3?;J@^WE3xRwo%>1moY#GITHbMizXfN>F4CKl?@ z*Gp{hgruy)g#}tM?h6B$303yba`PZl_0Z$FYS^mR8uMjZ3pVn>^}$uOrRCse@pL@c zIyE{?<7yj*)l)Cc=N#QOHFfD^V|wbcEtgJAO;1fsZF%aJiLLQL^%!p{jn?-cb)9MG zfuoT5(r}c635Egns2WhC+3-2k_9w8EO7uilbMks!>6PeA`jV>_!LOfoISK7slTu5n zf_db|@(atPMy`j-V4CEX)?B$-+eeCp=Gy5kG}judT~ZTR=eC$-2L+Nd70A+Zi?84d z6=`+C_^a2Jg4!IdwVC0Ecf~@pfMN>=g54D?*Y@VFLz(3!wt%(=yRkomdA*s(>`nU+ z`@$kCLaLVi`}gOU%8mTe@?yRiPGS|$K5tACv+5`PnBB51zg%31tD476n@Q>X-ci)S zhPpYb*v3HI5?3^r2}RQ*T8G-b7ho%*%TrW@Rzy1tMa0|Vr-)8P`|~Naq$;9sUQ-Ag zFl(TLZmv}-H8N(HVN}T&-1G)iT@o2$$xat z!DU;=16oT=Z*v+w#!_Ne{<5w4scqBK(_3QHQZj-Q&%($?Mf zfHp~T0se;-AXbNL$BlmwXnlsWv?ke2*x$w@Ql^abjzbmB6>~#73mU?5BcEd#j7~521gVFHs8>IVb zUy^+Y6Sl~@2&O2wj#Y)jo1|*EoT>TL3-OxR8LePYRoHV~ymQ=DiFdKKWvFVI34OM< zRK>w7wP&GHEAakYp5PrKHge@Bgs2=RYq0aZSuKoeYY8Wvg?hbkkjb3=i=-pU;v2x| zUbYk<-0mwETO@oYvIgxlvrS`$wp@eO5Lge)JNb)hSR4>mSYfpNomL8+Mt0#A$Lmxa zYqeOdq_apx)|SduF1@*0t-{eJS*OO~oAN?=9t#|{(?Tt*?F;J@#PgnAIc^Nlx%{eT zShw~(*Bhf>>RaoX(x?%f366uhdu_V9i(W&Ya;0?%NM6ZEP<>A8BV*&0@5@Fn$5(Rs zEVgQ+w(+ce8yCN+o%+*E9NgSyi0(J5G8Cbdiup(hg|_vg_ps(AufQ<@m=YNV$vYVd zNrauVq4PrX9Fd$B$R&UubMhZ{ogeY2^F#PX)FnFODXqEaZFp*nxukcTuO65{VS^2( zFxBqpbG$vDO>a6K%dshwWc{i1@1qBJ(Y#xdr)KKO`{+|$`a4+ZHc&TN8Z`%*y5=|+ z?$#KPgaqYJB?E@HfA?sRF#^wl4E~LC`Cl8pLo-z+{8#C8wtdktZNnfVb^o1M?C@wRK7sM#xx|H=9UI9;CQ1rimstFQ zpQV2<0nEF^8^F|yE&wmuNRq3yjx{uY(fj(@h2k@vbxR;6yj3!0SpJ%azzi&31S$L@ zBN+gezw1%Az%tb-u)HY^%U29U)If9p1u0oa$79nAvin(jlNFvv@csWu|6bymcZ)Zk zsV7}{Ua&D`ttyNyA@Mw>HvIQ!TyQ?aRkcL3`=t^v1M@i$a*AzkE{aDXf+sVQ0f2e4 zN8JLrk-?xc}v1h zV3%D$7cft@i;<9wKUM-_V0^wuYYokMF`952BeB7_n(bZ6D#b6mrjkcZ0(w+~fZkXd z^oG-<1XOkXMsXRvh^ifq4yH4z0J9n2?@Rw)0)~su8!#ko7hnn=d%*qe|GMyXhO1WD z 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 O;)Tw44|Dgl!v6=K2Q_>E diff --git a/docs/doctrees/idtxl_results_class.doctree b/docs/doctrees/idtxl_results_class.doctree index a9dc0634b2b864059bcadf8e32ed7ec5a6bd6f3c..a4be4c3f8395fd632129ca0320ad656e0ef915ae 100644 GIT binary patch literal 144760 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 Wx}3z-s8GQI9(=XJondc$?EeGXd%NZU literal 116053 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 LjOjXEZB6_?MCF&0 diff --git a/docs/doctrees/index.doctree b/docs/doctrees/index.doctree index 9d41da1d605ba131ac4189736eb83485e01085ca..039daae6f4ca46759ae795c79b0755f25b171aa9 100644 GIT binary patch delta 2074 zcmb7FZA@Eb6y60|=oh7Q{Q?RU7!<^I6BBeXV{B1zK;s9=mPzd{?QP%t(%!Q6UI$K8 zmY}d){o%RBk<1u>;Ie2mlSDK|v%e;0iGPfam`Ge=Vq(;3qW|=~w;!~y%=n|vy*=-_ z&pFRI=Y8K-N0*NqUNXG#T;Q7F?Ha3UiY2mfB_l|(2JhC~XdWVNa)|VjTGAIG{Sjq` zhi#kR9!B$E!Aydrf8(Rt5N94O`@zq3LW^pARFub*84Z0W%1cEGpGmEg_>7>DDOfTL z8BU-G=2$c(I%i5B* zs0E3E$K8m>1-tjntv>O+B;*V;i1Al>nAL`zfFns8EtaqTg9OF#H z9qQ5Ee9SwIv`BKAJ$BclnbqTDd4<&jt~5_sj+W{{&w|m}&7Fk-ryp_5+10pMc4zw> zBdaGIQYOlV#}!n@9*y#-pTGN^T6KIbNEuuxomyD$_fToSKwNivv^7o4;y12R=gEw zh`s_xTsME0Yk_o_rP%a#8UdB)vYA##hQ zyhmi&S|xG|Hr<_pAODZYAMPUZ7bdc+Akvr@_*|UqmWY!`zps+WEZ;GSt~>S-PY6Hs zdL1spvfLSl!WhDYH)7v4-Eh@A>tMFp!T{^rwjSn;Z5Gv-&nme%-VQ;S@SWnq8|%I` zj(Y?~THUpZoZL9o+QxA~P};gd@(;KjX;BhlX+cWKB$gI4qO46e^}(BMtASo3%X9g| z;c$YN`Qi~A5(POK%H~pGyzF4uKMa@rZ`rIuW=2TF#0;Mj@^D}K!TpZB5SPWQ6w3?g zB=SnL+A8qvi!XN8;0fYKAR=6I%6 Li?D7eGogP0Qtx+W delta 1888 zcmaJ?U1(cn818A3vn1`BG`~&SH0f{B)TXj2!-?D6K(_^>V*RbLq|IsHd~K61KiK)- zVWmQ*=zAuUA&L%B1eruZQ3kv6M(aS-vWv0Zi5EIy>V-mm-<;*Q){DMh&eP|6@;vYR zoiD40PTpyFL4WE*;1k2!t*s#8xz_cLUEqS7K>{5N#~_5?+4?LIf<`q6f)FZwrHe@B z12xWdy&{85q$pl94;tmWQ~AS%X%$Zyb{mcmd;q^SJnebB07DQjnzPERl2y_(N>YtV z<^Lw+u8x{qtT3(M1)~Swk@e1fFw9>WHB~GWreS~S3;7kvvRpMlJK!ijWPCt#vBECQ z`X^KKDHSG*A-p1o&|)%}*vm3;pFp2!(e_%|4=j{TFx-iorpNG4)9e=MdGnkmeU_we z(M=Y^q&bMMw#gkTtJH+2+EzL~Z4ky^+wR*Ucu)Itn&8*$72P|%Bszx2+Q*s&GdoZ3 z`l&&Xoff5tx~i_I&#ECXz%kBM-;HYjES3JXYyB%J9pjR}RcdJwdM+{-BNsE5b}k)Q zvYc=_=p%pa^&11|B!S=YsCD^jkX9+`N2yyUY=SdT7cZ#N@!s^0dDT7C$2(wTonNV6aC<$M?d}b zY1=4&lX*1Tjtq}9wk67e{-ZC)Z3i8Xk}ion%u9V=Y}}WLD$0GqR{KQT{z_j&8WZ*b zf0`-OXD}7zRC*zmR#a5$IPcl}^-mE8zqjAkw#;OgDDd-=!H54ijaJw!n&>r5W)>5v zv?^BdUdLg3j)~ga7NQMHyy2oPV67Y>1{XBY-z@~QU1E-xa)ujcLCmAW*}tb|`F&=P zS&^p?Rg+cpcms-y&VKjD1U1hhBwoaG&cRBWkBG8en$IcCSWvt{l%jDllT4+P$}$gJ z)Fq^8i4Rz$J|Tl=HSqrv{@@DKCETDbTN75%hJ+h>TQQ_n_Ao#@l<}!k>G`FzkOO>}#c)%1Z?R z6gUH?;XHf^SK+d_pS+707bkOUc+u~OGCc;c24~jb{2E+cE7Rz%V7vexdh0c{QBs>C zwbx1QGq?;JniOAF!p3?NI3D<>-Iz*FV!Z diff --git a/docs/doctrees/modules.doctree b/docs/doctrees/modules.doctree index 9c7aa83b9015cf67d606157e57b005ad56696716..9677765301f21bb37f93bcc51d56d8ed1f49f70a 100644 GIT binary patch delta 559 zcmZ9Iy=zoK6vcUN-oET+{RjyGakH{SjVAjMY>Zn-#KI!Dg+(C6@|c}>_uVn?&8+ig zP{9xzi@-Et#!mkTu@xJ!@;^yqDK_Hl8r)!U7`VgvoqNye(&=*eCVUrHPr}bNQ;8En zbq-v)ldsRiI+k$N-Ve5dhJ6-1Sh;@aZew%caLwzc*Sgmo`z6>8cI?jpk2dixu3`%t zyK{IAyLw3QyvJNtf+`8nej&+t4APMqX5ch#V%z&_I1Qd~`g#ce5GG`adYO6CS^jJ= zU1YE`MN~baG(+rO_NxI>5g{Q{f*-Lv23zqhI^iK)d+VM$`@Yh< dvA{UZbmET?sT(*`O@InXCh4v}sZ$R-e*m!j%D(^r delta 420 zcmZ9HK}!Nb6vr8LHx;QvmWS4miV)4UPK87TL6-$j30_3j-O0CLJKM}G6`^(Pun;oS zvCq)KYabwpK0|jeeT7Deln#F$Jox{9?~SwLW$hvH{FNGNZ!ti_&npc<91L-ac2Qn% zbhNtOmqjSFBy6Z`scfqh#XCAc#{$LRz65( + + + + + + idtxl.embedding_optimization_ais_Rudelt — IDTxl 1.2.1 documentation + + + + + + + + + + + + + + +

    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%0DItlF(1IdJwj1% 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