Multivariate Multiscale Entropies
Functions for estimating the multivariate multiscale entropy of a multivariate dataset.
Multivariate multiscale entropy can be calculated using any of the Multivariate Entropies:
MvCoSiEn
, MvDispEn
, MvFuzzEn
, MvPermEn
, MvSampEn
.
Important
Multivariate multiscale entropy functions have two positional arguments:
the multivariate dataset,
Data
, a N (>10) x M (>1) matrixthe multiscale entropy object,
Mobj
.
- MSobject(EnType='SampEn', **kwargs)
MSobject creates an object to store multiscale entropy parameters.
[Mobj] = MSobject()
Returns a multiscale entropy object (
Mobj
) based on that originally proposed by Costa et al. using the following default parameters: EnType = ‘SampEn’, embedding dimension = 2, time delay = 1, radius = 0.2*SD(Sig
), logarithm = natural[Mobj] = MSobject(EnType)
Returns a multiscale entropy object using the specified entropy method (
EnType
) and the default parameters for that entropy method. To see the default parameters for a particular entropy method, type: help(EnType) (e.g.help(SampEn)
)[Mobj] = MSobject(EnType, keyword = value, ...)
Returns a multiscale entropy object using the specified entropy method (
EnType
) and the name/value parameters for that particular method. To see the default parameters for a particular entropy method, type: help(EnType) (e.g.help(SampEn)
)EnType
can be any of the following (case sensitive) string names:- Base Entropies:
'ApEn'
:Approximate Entropy
'SampEn'
:Sample Entropy
'FuzzEn'
:Fuzzy Entropy
'K2En'
:Kolmogorov Entropy
'PermEn'
:Permutation Entropy
'CondEn'
:Conditional Entropy
'DistEn'
:Distribution Entropy
'DispEn'
:Dispersion Entropy
'SpecEn'
:Spectral Entropy
'SyDyEn'
:Symbolic Dynamic Entropy
'IncrEn'
:Increment Entropy
'CoSiEn'
:Cosine Similarity Entropy
'PhasEn'
:Phase Entropy
'SlopEn'
:Slope Entropy
'BubbEn'
:Bubble Entropy
'GridEn'
:Grid Distribution Entropy
'EnofEn'
:Entropy of Entropy
'AttnEn'
:Attention Entropy
'DivEn'
:Diversity Entropy
'RangEn'
:Range Entropy
- Cross Entropies:
'XApEn'
:Cross-Approximate Entropy
'XSampEn'
:Cross-Sample Entropy
'XFuzzEn'
:Cross-Fuzzy Entropy
'XK2En'
:Cross-Kolmogorov Entropy
'XPermEn'
:Cross-Permutation Entropy
'XCondEn'
:Cross-Conditional Entropy (corrected)
'XDistEn'
:Cross-Distribution Entropy
'XSpecEn'
:Cross-Spectral Entropy
- Multivariate Entropies:
'MvSampEn'
:Multivariate Sample Entropy
'MvFuzzEn'
:Multivariate Fuzzy Entropy
'MvDispEn'
:Multivariate Dispersion Entropy
'MvCoSiEn'
:Multivariate Cosine Similarity Entropy
'MvPermEn'
:Multivariate Permutation Entropy
- See also:
MSEn
,MvMSEn
,cMSEn
,cMvMSEn
,rMSEn
,hMSEn
,XMSEn
,rXMSEn
,cXMSEn
,hXMSEn
The following functions use the multiscale entropy object shown above.
- MvMSEn(Data, Mbjx, Scales=3, Methodx='coarse', Plotx=False)
MvMSEn Returns the multivariate multiscale entropy of a multivariate dataset.
MSx,CI = MvMSEn(Data, Mobj)
Returns a vector of multivariate multiscale entropy values (
MSx
) and the complexity index (CI
) of the data sequences inData
using the parameters specified by the multiscale object (Mobj
) over 3 temporal scales with coarse- graining (default).Caution
By default, the
MvSampEn
andMvFuzzEn
multivariate entropy algorithms estimate entropy values using the “full” method by comparing delay vectors across all possiblem+1
expansions of the embedding space as applied in [1]. These methods are not lower-bounded to 0, like most entropy algorithms, soMvMSEn
may return negative entropy values if the base multivariate entropy function isMvSampEn
andMvFuzzEn
, even for stochastic processes…MSx,CI = MvMSEn(Data, Mobj, keyword = value, ...)
Returns a vector of multivariate multiscale entropy values (
MSx
) and the complexity index (CI
) of the data sequences inData
using the parameters specified by the multiscale object (Mobj
) and the followingkeyword
arguments:- Scales:
Number of temporal scales, an integer > 1 (default: 3)
- Methodx:
Graining method, one of the following: [default:
'coarse'
] {'coarse'
,'modified'
,'generalized'
}
- Plotx:
When
Plotx == True
, returns a plot of the entropy value at each time scale (i.e. the multiscale entropy curve) [default: False]
For further info on these graining procedures see the EntropyHub guide.
- See also:
MSobject
,cMvMSEn
,MvFuzzEn
,MvSampEn
,MvPermEn
,MvCoSiEn
,MvDispEn
- References:
- [1] Ahmed Mosabber Uddin, Danilo P. Mandic
“Multivariate multiscale entropy analysis.” IEEE signal processing letters 19.2 (2011): 91-94.
- [2] Madalena Costa, Ary Goldberger, and C-K. Peng,
“Multiscale entropy analysis of complex physiologic time series.” Physical review letters 89.6 (2002): 068102.
- [3] Vadim V. Nikulin, and Tom Brismar,
“Comment on “Multiscale entropy analysis of complex physiologic time series”.” Physical Review Letters 92.8 (2004): 089803.
- [4] Madalena Costa, Ary L. Goldberger, and C-K. Peng.
“Costa, Goldberger, and Peng reply.” Physical Review Letters 92.8 (2004): 089804.
- [5] Madalena Costa, Ary L. Goldberger and C-K. Peng,
“Multiscale entropy analysis of biological signals.” Physical review E 71.2 (2005): 021906.
- [6] Ranjit A. Thuraisingham and Georg A. Gottwald,
“On multiscale entropy analysis for physiological data.” Physica A: Statistical Mechanics and its Applications 366 (2006): 323-332.
- [7] Ahmed Mosabber Uddin, Danilo P. Mandic
“Multivariate multiscale entropy: A tool for complexity analysis of multichannel data.” Physical Review E 84.6 (2011): 061918.
- cMvMSEn(Data, Mbjx, Scales=3, Refined=False, Plotx=False)
cMvMSEn Returns the composite + refined-composite multivariate multiscale entropy of a multivariate dataset.
MSx,CI = cMvMSEn(Data, Mobj)
Returns a vector of composite multivariate multiscale entropy values (
MSx
) and the complexity index (CI
) of the data sequences inData
using the parameters specified by the multiscale object (Mobj
) over 3 temporal scales with coarse- graining (default).Caution
By default, the
MvSampEn
andMvFuzzEn
multivariate entropy algorithms estimate entropy values using the “full” method by comparing delay vectors across all possiblem+1
expansions of the embedding space as applied in [1]. These methods are not lower-bounded to 0, like most entropy algorithms, soMvMSEn
may return negative entropy values if the base multivariate entropy function isMvSampEn
andMvFuzzEn
, even for stochastic processes…MSx, CI = cMvMSEn(Data, Mobj, Refined = True)
Returns a vector of refined-composite multiscale entropy values (
MSx
) for the data sequences in (Data
) using the parameters specified by the multiscale object (Mobj
) using the refined-composite multivariate multiscale entropy method (rcMSE) over 3 temporal scales. WhenRefined == True
, the base entropy method must beMvSampEn
orMvFuzzEn
. If the entropy method isMvSampEn
, cMvMSEn employs the method described in [1]. If the entropy method isMvFuzzEn
, cMvMSEn employs the method described in [5].MSx,CI = cMvMSEn(Data, Mobj, keyword = value, ...)
Returns a vector of composite multivariate multiscale entropy values (
MSx
) and the complexity index (CI
) of the data sequences inData
using the parameters specified by the multiscale object (Mobj
) and the followingkeyword
arguments:- Scales:
Number of temporal scales, an integer > 1 (default: 3)
- Refined:
Refined-composite MvMSEn method. When
Refined == True
and the entropy function specified byMobj
isMvSampEn
orMvFuzzEn
,cMvMSEn
returns the refined-composite multivariate multiscale entropy (rcMSEn) [default: False]
- Plotx:
When
Plotx == True
, returns a plot of the entropy value at each time scale (i.e. the multiscale entropy curve) [default: False]
For further info on these graining procedures see the EntropyHub guide.
- See also:
MSobject
,MvMSEn
,MvFuzzEn
,MvSampEn
,MvPermEn
,MvCoSiEn
,MvDispEn
- References:
- [1] Shuen-De Wu, et al.,
“Time series analysis using composite multiscale entropy.” Entropy 15.3 (2013): 1069-1084.
- [2] Shuen-De Wu, et al.,
“Analysis of complex time series using refined composite multiscale entropy.” Physics Letters A 378.20 (2014): 1369-1374.
- [3] Ahmed Mosabber Uddin, Danilo P. Mandic
“Multivariate multiscale entropy: A tool for complexity analysis of multichannel data.” Physical Review E 84.6 (2011): 061918.
- [4] Ahmed Mosabber Uddin, Danilo P. Mandic
“Multivariate multiscale entropy analysis.” IEEE signal processing letters 19.2 (2011): 91-94.
- [5] Azami, Alberto Fernández, Javier Escudero.
“Refined multiscale fuzzy entropy based on standard deviation for biomedical signal analysis.” Medical & biological engineering & computing 55 (2017): 2037-2052.