Convenience functions
Common entropy-based measures
We provide a few convenience functions for widely used names for entropy or "entropy-like" quantities. Other arbitrary specialized convenience functions can easily be defined in a couple lines of code.
We emphasize that these functions really aren't anything more than 2-lines-of-code wrappers that call information with the appropriate OutcomeSpace and InformationMeasure.
ComplexityMeasures.entropy_permutation — Functionentropy_permutation(x; τ = 1, m = 3, base = 2)Compute the permutation entropy of x of order m with delay/lag τ. This function is just a convenience call to:
est = OrdinalPatterns(; m, τ)
information(Shannon(base), est, x)See OrdinalPatterns for more info. Similarly, one can use WeightedOrdinalPatterns or AmplitudeAwareOrdinalPatterns for the weighted/amplitude-aware versions.
ComplexityMeasures.entropy_wavelet — Functionentropy_wavelet(x; wavelet = Wavelets.WT.Daubechies{12}(), base = 2)Compute the wavelet entropy. This function is just a convenience call to:
est = WaveletOverlap(wavelet)
information(Shannon(base), est, x)See WaveletOverlap for more info.
ComplexityMeasures.entropy_dispersion — Functionentropy_dispersion(x; base = 2, kwargs...)Compute the dispersion entropy. This function is just a convenience call to:
est = Dispersion(kwargs...)
information(Shannon(base), est, x)See Dispersion for more info.
ComplexityMeasures.entropy_approx — Functionentropy_approx(x; m = 2, τ = 1, r = 0.2 * Statistics.std(x), base = MathConstants.e)Convenience syntax for computing the approximate entropy (Pincus, 1991) for timeseries x.
This is just a wrapper for complexity(ApproximateEntropy(; m, τ, r, base), x) (see also ApproximateEntropy).
ComplexityMeasures.entropy_sample — Functionentropy_sample(x; r = 0.2std(x), m = 2, τ = 1, normalize = true)Convenience syntax for estimating the (normalized) sample entropy (Richman & Moorman, 2000) of timeseries x.
This is just a wrapper for complexity(SampleEntropy(; r, m, τ, base), x).
See also: SampleEntropy, complexity, complexity_normalized).
ComplexityMeasures.entropy_distribution — Functionentropy_distribution(x; τ = 1, m = 3, n = 3, base = 2)Compute the distribution entropy (Li et al., 2015) of x using embedding dimension m with delay/lag τ, using the Chebyshev distance metric, and using an n-element equally-spaced binning over the distribution of distances to estimate probabilities.
This function is just a convenience call to:
x = rand(1000000)
o = SequentialPairDistances(x, n, m, τ, metric = Chebyshev())
h = information(Shannon(base = 2), o, x)See SequentialPairDistances for more info.