Python Wrapper class for InfoTools.h
This class loads the .so file from the compiled InfoTools.h that allows functions written in C++ to be called from Python. Create and object of this class to call associated functions.
def infotheory.infotools.InfoTools.entropy 
( 

self, 



var_IDs 

) 
 
Compute entropy of random vars given by varIDs==0
ARGS:
varIDs: (listlike, size=dims) list to identify the dimensions of the data that need to be considered to estimate entropy
RETURNS:
Entropy of random variable made up by data along dimensins where varIDs==0
Example:
if dims = 4, 4D datapoints will be added, but if only the first 2 dimensions make up the variable of interest, then set
varIDs = [1,1,1,1]
The dims with varID==1 will be ignored
def infotheory.infotools.InfoTools.mutual_info 
( 

self, 



var_IDs 

) 
 
Compute mutual information between two random vars for datapoints that have already been added.
The two variables are identified by varIDs==0 and varIDs==1.
Set varIDs=1 for dimensions to be ignored.
ARGS:
varIDs: (listlike, size=dims) list of length equal to dimensionality of data
RETURNS:
Mutual information between vars defined by varIDs==0 and varIDs==1
Example:
if dims = 4, 4D datapoints will be added, but if only the first 2 dimensions make up one variable and the rest the other, then set
varIDs = [0,0,1,1]
The dims with varID==1 will be ignored
def infotheory.infotools.InfoTools.redundant_info 
( 

self, 



var_IDs 

) 
 
Compute redundant information about a random var from two random vars for datapoints that have already been added.
The target random var is identified by varIDs==0
The two sources are identified by varIDs==1 and varIDs==2.
Set varIDs=1 for dimensions to be ignored.
ARGS:
varIDs: (listlike, size=dims) list of length equal to dimensionality of data
RETURNS:
Redundant information from vars defined by varIDs==1 and varIDs==2 about varIDs==0
Example:
if dims = 4, 4D datapoints will be added. If the first dimension denotes the target and the second and third denote the two sources, then set
varIDs = [0,1,2,1]
The dims with varID==1 will be ignored
def infotheory.infotools.InfoTools.set_bin_boundaries 
( 

self, 



boundaries, 



dim_index = None 

) 
 
set the left margin of each bin for each dimension
ARGS
boundaries: a list with a list of binmargins for each dimension OR a list for just one dimension with dimension specified in dim_index.\n
Length of list = number_of_bins1, left most bin is (inf,list[0]) and right most bin is (list[1],inf)
dim_index: (int, default=None) denoting the dimension for which the bins are being set, if boundaries is a single list of boundaries
def infotheory.infotools.InfoTools.synergy 
( 

self, 



var_IDs 

) 
 
Compute synergistic information about a random var from two random vars for datapoints that have already been added.
The target random var is identified by varIDs==0
The two sources are identified by varIDs==1 and varIDs==2.
Set varIDs=1 for dimensions to be ignored.
ARGS:
varIDs: (listlike, size=dims) list of length equal to dimensionality of data
RETURNS:
Synergistic information from vars defined by varIDs==1 and varIDs==2 about varIDs==0
Example:
if dims = 4, 4D datapoints will be added. If the first dimension denotes the target and the second and third denote the two sources, then set
varIDs = [0,1,2,1]
def infotheory.infotools.InfoTools.unique_info 
( 

self, 



var_IDs 

) 
 
Compute unique information about a random var from two random vars for datapoints that have already been added.
The target random var is identified by varIDs==0
The two sources are identified by varIDs==1 and varIDs==2.
Set varIDs=1 for dimensions to be ignored.
ARGS:
varIDs: (listlike, size=dims) list of length equal to dimensionality of data
RETURNS:
Unique information from vars defined by varIDs==1 about varIDs==0 that is not redundant with varIDs==2
Example:
if dims = 4, 4D datapoints will be added. If the first dimension denotes the target and the second and third denote the two sources, then set
varIDs = [0,1,2,1]