Example 11: Multivariate Dispersion Entropy

Import a vector of 4096 uniformly distributed random integers in range [1 8] and convert it to a multivariate set of 4 sequences with 1024 samples each.

X = EH.ExampleData('randintegers')
Data = np.reshape(X,(4,1024)).T

Calculate the multivariate dispersion entropy and reverse dispersion entropy for embedding dimensions (m) = [1,1,2,3], using a 7-symbol transform.

MDisp, RDE = EH.MvDispEn(Data, m = np.array([1,1,2,3]), c = 7)

>>> MDisp =
    6.9227345

>>> RDE =
    0.0009856

Perform the same calculation but normalize the output entropy estimate w.r.t the number of unique dispersion patterns

MDisp, RDE = EH.MvDispEn(Data, m = np.array([1,1,2,3]), c = 7, Norm = True)

>>> MDisp =
    0.508226

>>> RDE =
    0.0009856

Compare the results above (Methodx == 'v1') with those obtained using the mvDE method (Methodx=='v2'), returning estimates for each value from 1, …, max(m)

MDisp, RDE = EH.MvDispEn(Data, m = np.array([1,1,2,3]), c = 7, Norm = True, Methodx = 'v2')

>>> MDisp =
    0.95439595, 0.94074854, 0.93012334

>>> RDE =
    0.02675949, 0.00805324, 0.00201614