ComplexityMeasures.jl
Estimators for probabilities, entropies, and other complexity measures derived from data in the context of nonlinear dynamics and complex systems
Install / Use
/learn @JuliaDynamics/ComplexityMeasures.jlREADME
ComplexityMeasures.jl
ComplexityMeasures.jl is a Julia-based software for calculating 1000s of various kinds of
probabilities, entropies, and other so-called complexity measures from a single-variable input datasets. For relational measures across many input datasets see its extension Associations.jl.
If you are a user of other programming languages (Python, R, MATLAB, ...),
you can still use ComplexityMeasures.jl due to Julia's interoperability.
For example, for Python use juliacall.
A careful comparison with alternative widely used software shows that ComplexityMeasures.jl outclasses the alternatives in several objective aspects of comparison, such as computational performance, overall amount of measures, reliability, and extendability. See the associated publication for more details.
The key features that ComplexityMeasures.jl provides can be summarized as:
- A rigorous framework for extracting probabilities from data, based on the mathematical formulation of probability spaces.
- Several (12+) outcome spaces, i.e., ways to discretize data into probabilities.
- Several estimators for estimating probabilities given an outcome space, which correct theoretically known estimation biases.
- Several definitions of information measures, such as various flavours of entropies (Shannon, Tsallis, Curado...), extropies, and other complexity measures, that are used in the context of nonlinear dynamics, nonlinear timeseries analysis, and complex systems.
- Several discrete and continuous (differential) estimators for entropies, which correct theoretically known estimation biases.
- An extendable interface and well thought out API accompanied by dedicated developer documentation. This makes it trivial to define new outcome spaces, or new estimators for probabilities, information measures, or complexity measures and integrate them with everything else in the software without boilerplate code.
ComplexityMeasures.jl can be used as a standalone package, or as part of other projects in the JuliaDynamics organization, such as DynamicalSystems.jl or Associations.jl.
To install it, run import Pkg; Pkg.add("ComplexityMeasures").
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl file.
Previously, this package was called Entropies.jl.
Related Skills
node-connect
333.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
82.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
333.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
82.0kCommit, push, and open a PR
