"""Hidden Markov tree models""" import string import openalea.stat_tool.error as check_error import openalea.tree_statistic._errors as _errors import openalea.stat_tool as stat_tool, openalea.tree_statistic.trees as trees import openalea.stat_tool.error as check_error import _hmt VariableType=stat_tool.VariableTypeBis StatTreeError = _errors.StatTreeError CharacteristicType=trees.CharacteristicType EntropyAlgorithm=_hmt.EntropyAlgorithm VariableTypeDict=VariableType.values from openalea.stat_tool import interface interface.extend_class(_hmt.CiHmot, interface.StatInterface) interface.extend_class(_hmt.CHmt_data, interface.StatInterface) class HiddenMarkovIndOutTree: """An implementation of the hidden Markov out-trees with conditionally independent children states given their parent.""" def __init__(self, arg, aliasing=False): """Initialize a Hmt by copy or by reading into a file. Usage: H=HiddenMarkovIndOutTree("file_name") H=HiddenMarkovIndOutTree(HiddenMarkovIndOutTree).""" ## Aliasing is used to make an alias between argument and ## self.__chmt -> useful for the connection between HiddenMarkovIndOutTree ## and HiddenMarkovTreeData if type(arg)==str:
import os import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import \ _VariableOrderMarkov, _VariableOrderMarkovData from openalea.sequence_analysis._sequence_analysis import DEFAULT_LENGTH from openalea.stat_tool import error __all__ = ['VariableOrderMarkov', '_VariableOrderMarkov', '_VariableOrderMarkovData'] # Extend dynamically class interface.extend_class( _VariableOrderMarkov, interface.StatInterface) interface.extend_class( _VariableOrderMarkovData, interface.StatInterface) # Add methods to _Vectors def VariableOrderMarkov(*args, **kargs): """VariableOrderMarkov :Usage: .. doctest:: :options: +SKIP >>> VariableOrderMarkov(filename) """
import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import _Tops from openalea.sequence_analysis._sequence_analysis import _Sequences from openalea.sequence_analysis.enums import index_parameter_type_map #import _sequence_analysis from openalea.stat_tool import error __all__ = ['Tops', '_Tops', 'RemoveApicalInternodes'] # Extend dynamically class interface.extend_class( _Tops, interface.StatInterface) # Add methods to _Vectors def Tops(*args, **kargs): """Construction of a set of sequences from multidimensional arrays of integers, from data generated by a renewal process or from an ASCII file. The data structure of type array(array(array(int))) should be constituted at the most internal level of arrays of constant size. If the optional argument IndexParameter is set at "Position" or "Time", the data structure of type array(array(array(int))) is constituted at the most internal level of arrays of size 1+n (index parameter, n variables attached to the explicit index parameter). If the optional argument IndexParameter is set at "Position", only the index parameter of the last array of size
import os import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import _SemiMarkov from openalea.sequence_analysis._sequence_analysis import _SemiMarkovData from openalea.stat_tool import error from openalea.sequence_analysis._sequence_analysis import DEFAULT_LENGTH __all__ = ['SemiMarkov', '_SemiMarkov', '_SemiMarkovData'] # Extend dynamically class interface.extend_class( _SemiMarkov, interface.StatInterface) interface.extend_class( _SemiMarkovData, interface.StatInterface) # Add methods to _Vectors def SemiMarkov(filename=None, length=DEFAULT_LENGTH, counting=True, cumul_threshold=0): """SemiMarkov constructor Construction of a semi-Markov chain from an ASCII file. :Usage: :: SemiMarkov(filename, length=40, counting=True, cumul_threshold=40)
""" __version__ = "$Id$" import os import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import _Tops from openalea.sequence_analysis._sequence_analysis import _Sequences from openalea.sequence_analysis.enums import index_parameter_type_map #import _sequence_analysis from openalea.stat_tool import error __all__ = ['Tops', '_Tops', 'RemoveApicalInternodes'] # Extend dynamically class interface.extend_class(_Tops, interface.StatInterface) # Add methods to _Vectors def Tops(*args, **kargs): """Construction of a set of sequences from multidimensional arrays of integers, from data generated by a renewal process or from an ASCII file. The data structure of type array(array(array(int))) should be constituted at the most internal level of arrays of constant size. If the optional argument IndexParameter is set at "Position" or "Time", the data structure of type array(array(array(int))) is constituted at the most internal level of arrays of size 1+n (index parameter, n variables attached to the explicit index parameter). If the optional argument IndexParameter is set at "Position", only the index parameter of the last array of size
from openalea.stat_tool._stat_tool import _DiscreteMixtureData from openalea.stat_tool._stat_tool import _CompoundData from openalea.stat_tool._stat_tool import _ConvolutionData from openalea.stat_tool._stat_tool import _DiscreteDistributionData from openalea.sequence_analysis._sequence_analysis import _TimeEvents from openalea.sequence_analysis._sequence_analysis import _RenewalData from openalea.sequence_analysis._sequence_analysis import _Sequences #import _sequence_analysis from openalea.stat_tool import error __all__ = ['TimeEvents', '_TimeEvents', 'NbEventSelect'] # Extend dynamically class interface.extend_class(_TimeEvents, interface.StatInterface) # Add methods to _Vectors def TimeEvents(*args, **kargs): """TimeEvents Construction of data of type {time interval between two observation dates, number of events occurring between these two observation dates} from time sequences, from an object of type HISTOGRAM or from an ASCII file. :Usage: .. doctest:: :options: +SKIP
from openalea.sequence_analysis.enums import type_dict, norm_type from openalea.sequence_analysis.data_transform import _check_nb_variable from openalea.stat_tool import error from openalea.sequence_analysis._sequence_analysis import MAX_LAG __all__ = ['_Correlation', 'ComputeCorrelation', 'ComputeAutoCorrelation', 'ComputeWhiteNoiseCorrelation', 'ComputePartialAutoCorrelation'] # Extend dynamically class interface.extend_class( _Correlation, interface.StatInterface) def ComputeCorrelation(obj, *args, **kargs): """Computation of sample autocorrelation or cross-correlation functions. :Examples: .. doctest:: :options: +SKIP >>> ComputeCorrelation(seq1, MaxLag=10, Type="Spearman", Normalization="Exact") >>> ComputeCorrelation(seqn, variable, MaxLag=10, Type="Spearman", Normalization="Exact") >>> ComputeCorrelation(seqn, variable1, variable2, MaxLag=10, Type="Spearman", Normalization="Exact") :Arguments:
from openalea.sequence_analysis import * """ __version__ = "$Id$" import os import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import _HiddenSemiMarkov from openalea.stat_tool import error from openalea.sequence_analysis._sequence_analysis import DEFAULT_LENGTH from openalea.sequence_analysis._sequence_analysis import OCCUPANCY_THRESHOLD __all__ = ['HiddenSemiMarkov', '_HiddenSemiMarkov'] # Extend dynamically class interface.extend_class(_HiddenSemiMarkov, interface.StatInterface) # Add methods to _Vectors def HiddenSemiMarkov(*args, **kargs): """HiddenSemiMarkov Construction of an object of type hidden_semi-markov from an ASCII file. :Usage: .. doctest:: :options: +SKIP >>> HiddenSemiMarkov(file_name, Length=40, Counting=False)
__all__ = ['Sequences', '_Sequences', '_MarkovianSequences', 'LumpabilityTest', 'RemoveIndexParameter', 'TransformPosition', 'SaveMTG', 'ComputeInitialRun', 'IndexParameterType', 'ComputeInitialRun', 'Split'] # Extend dynamically class interface.extend_class( _Sequences, interface.StatInterface) interface.extend_class( _MarkovianSequences, interface.StatInterface) # Add methods to _Vectors def LumpabilityTest(obj, *args, **kargs): """.. todo:: documenation""" error.CheckArgumentsLength(args, 1, 1) error.CheckType([obj], [[_MarkovianSequences, _VariableOrderMarkovData, _SemiMarkovData, _NonHomogeneousMarkovData]]) symbol = args[0]
from openalea.sequence_analysis._sequence_analysis import _TimeEvents from openalea.sequence_analysis._sequence_analysis import _RenewalData from openalea.sequence_analysis._sequence_analysis import _Sequences #import _sequence_analysis from openalea.stat_tool import error __all__ = ['TimeEvents', '_TimeEvents', 'NbEventSelect'] # Extend dynamically class interface.extend_class( _TimeEvents, interface.StatInterface) # Add methods to _Vectors def TimeEvents(*args, **kargs): """TimeEvents Construction of data of type {time interval between two observation dates, number of events occurring between these two observation dates} from time sequences, from an object of type HISTOGRAM or from an ASCII file. :Usage: .. doctest:: :options: +SKIP
_DiscreteParametric from openalea.sequence_analysis._sequence_analysis import \ _Renewal, _RenewalData, _Sequences, _MarkovianSequences from openalea.sequence_analysis._sequence_analysis import DEFAULT_TIME from openalea.stat_tool import error from openalea.stat_tool.enums import \ distribution_identifier_type, model_distribution_types __all__ = ['Renewal', '_Renewal', '_RenewalData', 'RenewalData'] # Extend dynamically class interface.extend_class( _Renewal, interface.StatInterface) interface.extend_class( _RenewalData, interface.StatInterface) # Add methods to _Vectors def Renewal(*args, **kargs): """Renewal Construction of a (either ordinary or equilibrium) renewal process from an inter-event distribution or from an ASCII file. :Usage: .. doctest:: :options: +SKIP
import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import \ _HiddenVariableOrderMarkov from openalea.sequence_analysis._sequence_analysis import DEFAULT_LENGTH from openalea.sequence_analysis._sequence_analysis import OCCUPANCY_THRESHOLD from openalea.stat_tool import error __all__ = ['HiddenVariableOrderMarkov', '_HiddenVariableOrderMarkov'] # Extend dynamically class interface.extend_class( _HiddenVariableOrderMarkov, interface.StatInterface) # Add methods to _Vectors def HiddenVariableOrderMarkov(filename=None, Length=DEFAULT_LENGTH, CumulThreshold=OCCUPANCY_THRESHOLD): """HiddenVariableOrderMarkov :param str filename: :param int Length: :param float CumulThreshold: .. todo:: documentation """
import os import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import _NonHomogeneousMarkov from openalea.sequence_analysis._sequence_analysis import _NonHomogeneousMarkovData from openalea.stat_tool import error from openalea.sequence_analysis._sequence_analysis import DEFAULT_LENGTH __all__ = [ 'NonhomogeneousMarkov', '_NonHomogeneousMarkov', '_NonHomogeneousMarkovData', ] # Extend dynamically class interface.extend_class(_NonHomogeneousMarkov, interface.StatInterface) interface.extend_class(_NonHomogeneousMarkovData, interface.StatInterface) def NonhomogeneousMarkov(filename, length=DEFAULT_LENGTH): """NonhomogeneousMarkov constructor :param str filename: :param int length: :Usage: .. doctest:: :options: +SKIP >>> nm = NonhomogeneousMarkov("filename.dat")
__version__ = "$Id$" import os import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import \ _VariableOrderMarkov, _VariableOrderMarkovData from openalea.sequence_analysis._sequence_analysis import DEFAULT_LENGTH from openalea.stat_tool import error __all__ = [ 'VariableOrderMarkov', '_VariableOrderMarkov', '_VariableOrderMarkovData' ] # Extend dynamically class interface.extend_class(_VariableOrderMarkov, interface.StatInterface) interface.extend_class(_VariableOrderMarkovData, interface.StatInterface) # Add methods to _Vectors def VariableOrderMarkov(*args, **kargs): """VariableOrderMarkov :Usage: .. doctest:: :options: +SKIP >>> VariableOrderMarkov(filename) """
__version__ = "$Id$" import os import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import _HiddenSemiMarkov from openalea.stat_tool import error from openalea.sequence_analysis._sequence_analysis import DEFAULT_LENGTH from openalea.sequence_analysis._sequence_analysis import OCCUPANCY_THRESHOLD __all__ = ['HiddenSemiMarkov', '_HiddenSemiMarkov'] # Extend dynamically class interface.extend_class( _HiddenSemiMarkov, interface.StatInterface) # Add methods to _Vectors def HiddenSemiMarkov(*args, **kargs): """HiddenSemiMarkov Construction of an object of type hidden_semi-markov from an ASCII file. :Usage: .. doctest:: :options: +SKIP >>> HiddenSemiMarkov(file_name, Length=40, Counting=False)
from openalea.sequence_analysis._sequence_analysis import _MarkovianSequences from openalea.sequence_analysis._sequence_analysis import _VariableOrderMarkov from openalea.sequence_analysis.enums import type_dict, norm_type from openalea.sequence_analysis.data_transform import _check_nb_variable from openalea.stat_tool import error from openalea.sequence_analysis._sequence_analysis import MAX_LAG __all__ = [ '_Correlation', 'ComputeCorrelation', 'ComputeAutoCorrelation', 'ComputeWhiteNoiseCorrelation', 'ComputePartialAutoCorrelation' ] # Extend dynamically class interface.extend_class(_Correlation, interface.StatInterface) def ComputeCorrelation(obj, *args, **kargs): """Computation of sample autocorrelation or cross-correlation functions. :Examples: .. doctest:: :options: +SKIP >>> ComputeCorrelation(seq1, MaxLag=10, Type="Spearman", Normalization="Exact") >>> ComputeCorrelation(seqn, variable, MaxLag=10, Type="Spearman", Normalization="Exact") >>> ComputeCorrelation(seqn, variable1, variable2, MaxLag=10, Type="Spearman", Normalization="Exact") :Arguments:
import os import openalea.stat_tool.interface as interface from openalea.sequence_analysis._sequence_analysis import _NonHomogeneousMarkov from openalea.sequence_analysis._sequence_analysis import _NonHomogeneousMarkovData from openalea.stat_tool import error from openalea.sequence_analysis._sequence_analysis import DEFAULT_LENGTH __all__ = ['NonhomogeneousMarkov', '_NonHomogeneousMarkov', '_NonHomogeneousMarkovData', ] # Extend dynamically class interface.extend_class( _NonHomogeneousMarkov, interface.StatInterface) interface.extend_class( _NonHomogeneousMarkovData, interface.StatInterface) def NonhomogeneousMarkov(filename, length=DEFAULT_LENGTH): """NonhomogeneousMarkov constructor :param str filename: :param int length: :Usage: .. doctest:: :options: +SKIP >>> nm = NonhomogeneousMarkov("filename.dat")