{"id":15057601,"url":"https://github.com/mattwillflood/entropyhub","last_synced_at":"2025-05-16T09:04:13.807Z","repository":{"id":44086651,"uuid":"327145178","full_name":"MattWillFlood/EntropyHub","owner":"MattWillFlood","description":"An open-source toolkit for entropic data analysis.","archived":false,"fork":false,"pushed_at":"2025-05-06T10:08:50.000Z","size":58393,"stargazers_count":163,"open_issues_count":6,"forks_count":23,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-05-13T11:11:28.089Z","etag":null,"topics":["chaos","complexity","dynamical-systems","entropy","information-theory","julia","matlab","multiscale-entropy","multivariate-entropy","python","randomness","signal-analysis","signal-processing","time-series"],"latest_commit_sha":null,"homepage":"https://www.entropyhub.xyz","language":"TeX","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MattWillFlood.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.bib","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"buy_me_a_coffee":"entropyhub"}},"created_at":"2021-01-05T23:25:14.000Z","updated_at":"2025-05-06T10:08:53.000Z","dependencies_parsed_at":"2023-09-22T04:12:41.482Z","dependency_job_id":"454129b2-325a-462d-b69a-6b80326f09ba","html_url":"https://github.com/MattWillFlood/EntropyHub","commit_stats":{"total_commits":300,"total_committers":3,"mean_commits":100.0,"dds":0.62,"last_synced_commit":"64b550cb49e14d335d4b1776d3631b033eef0518"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattWillFlood%2FEntropyHub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattWillFlood%2FEntropyHub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattWillFlood%2FEntropyHub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MattWillFlood%2FEntropyHub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MattWillFlood","download_url":"https://codeload.github.com/MattWillFlood/EntropyHub/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253929378,"owners_count":21985804,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chaos","complexity","dynamical-systems","entropy","information-theory","julia","matlab","multiscale-entropy","multivariate-entropy","python","randomness","signal-analysis","signal-processing","time-series"],"created_at":"2024-09-24T22:09:02.006Z","updated_at":"2025-05-16T09:04:08.796Z","avatar_url":"https://github.com/MattWillFlood.png","language":"TeX","funding_links":["https://buymeacoffee.com/entropyhub"],"categories":[],"sub_categories":[],"readme":"# EntropyHub: An open-source toolkit for entropic data analysis\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://github.com/MattWillFlood/EntropyHub/blob/main/Graphics/EntropyHub_profiler.png\" alt = \"EntropyHub Git\" width=\"250\" height=\"250\" /\u003e\n\u003c/p\u003e\n\n#### See full documentation at [www.EntropyHub.xyz](https://www.EntropyHub.xyz)\n\n  \n  Available in \n  [MatLab](https://www.mathworks.com/matlabcentral/fileexchange/94185-entropyhub \"EH4MATLAB\")  // \n  [Python](https://pypi.org/project/EntropyHub/ \"EH4PYTHON\")  // \n  [Julia](https://juliahub.com/ui/Packages/EntropyHub/npy5E/ \"EH4JULIA\") \n\n\n## Latest Update\n### v2.0\n__*----- New multivariate methods -----*__       \nFive new multivariate entropy functions incorporating several method-specific variations        \n        \u003e [Multivariate Sample Entropy](https://journals.aps.org/pre/abstract/10.1103/PhysRevE.84.061918)      \n        \u003e [Multivariate Fuzzy Entropy](https://www.mdpi.com/1099-4300/19/1/2) [++ many fuzzy functions]        \n        \u003e [Multivariate Dispersion Entropy](https://www.mdpi.com/1099-4300/21/9/913) [++ many symbolic sequence transforms]          \n        \u003e [Multivariate Cosine Similarity Entropy](https://www.mdpi.com/1099-4300/24/9/1287)        \n        \u003e Multivariate Permutation Entropy  [++ *amplitude-aware*, *edge*, *phase*, *weighted* and *modified* variants]       \n\n__*----- New multivariate multiscale methods -----*__       \nTwo new multivariate multiscale entropy functions        \n        \u003e [Multivariate Multiscale Entropy](https://journals.aps.org/pre/abstract/10.1103/PhysRevE.84.061918) [++ coarse, modified and generalized graining procedures]          \n        \u003e [Composite and Refined-composite Multivariate Multiscale Entropy](https://link.springer.com/article/10.1007/s11517-017-1647-5)      \n\n__*----- Extra signal processing tools -----*__     \n**WindowData()** is a new function that allows users to segment data (univariate or multivariate time series) into windows with/without overlapping samples! This allows users to calculate entropy on subsequences of their data to perform analyses with greater time resolution.        \n\n*Other little fixes...*\n   \n__*----- Docs edits -----*__     \n        - Examples in the www.EntropyHub.xyz documentation were updated to match the latest package syntax.     \n\n    \n### More to come!\nWe are currently adding several new elements to EntropyHub that we hope will benefit many users. However, this is a time-consuming effort.              \nKeep checking in here to find out more in the future!           \nThanks for all your support so far :)           \n\n\n## About\n\nInformation and uncertainty can be regarded as two sides of the same coin: \nthe more uncertainty there is, the more information we gain by removing that \nuncertainty. In the context of information and probability theory, ***Entropy*** \nquantifies that uncertainty. \n\nVarious measures have been derived to estimate entropy (uncertainty) from discrete \ndata sequences, each seeking to best capture the uncertainty of the system under examination. \nThis has resulted in many entropy statistics from approximate entropy and sample entropy, to\nmultiscale sample entropy and refined-composite multiscale cross-sample entropy.\n\nThe goal of EntropyHub is to provide a comprehensive set of functions with a simple and \nconsistent syntax that allows the user to augment parameters at the command \nline, enabling a range from basic to advanced entropy methods to be implemented\nwith ease.\n\n***It is important to clarify that the entropy functions herein described \nestimate entropy in the context of probability theory and information theory as\ndefined by Shannon, and not thermodynamic or other entropies from classical physics.***\n\n\n.........................................................................................................\n\n\n## Installation\n\nTo install EntropyHub with Matlab, Python or Julia, please follow the instructions given in the relevant folder above.\n\n### Requirements\n_________________________________________________________________________________________________________\n#### MatLab\nThere are two additional MatLab toolboxes required to exploit the *full* functionality of the EntropyHub toolkit: \n\n__*Signal Processing Toolbox*__ and __*Statistics and Machine Learning Toolbox.*__\n\nHowever, most functions will work without these toolboxes.\n\nEntropyHub is intended for use with MatLab versions \u003e= 2016a.  In some cases the toolkit may work on versions 2015a and 2015b, \nbut it is not recommended to install on MatLab versions older than 2016.\n_________________________________________________________________________________________________________\n\n#### Python\nThere are several package dependencies which will be installed alongside EntropyHub: \nNumpy, Scipy, Matplotlib, PyEMD, Requests\n\nEntropyHub was designed using Python 3 and thus is not intended for use with Python 2. Python versions \u003e 3.6 are recommended for using EntropyHub.  \n_________________________________________________________________________________________________________\n\n#### Julia\nThere are several package dependencies which will be installed alongside EntropyHub (if not already installed):\n\n__*DSP, FFTW, HTTP, Random, Plots, StatsBase, StatsFuns, GroupSlices, Statistics, DelimitedFiles, Combinatorics, LinearAlgebra, DataInterpolations, Clustering*__\n\nEntropyHub was designed using Julia 1.5 and is intended for use with Julia versions \u003e= 1.2.\n\n\n.........................................................................................................\n\n## Documentation \u0026 Help \n\nThe EntropyHub Guide is a .pdf booklet written to help you use the toolkit effectively. \n(available [here](https://github.com/MattWillFlood/EntropyHub/blob/main/EntropyHub%20Guide.pdf))\n\nIn this guide you will find descriptions of function syntax, examples of function use, and references to the source literature of each function.\n\nThe MatLab version of the toolkit has a comprehensive help section which can be accessed through the help browser.\n\n\n.........................................................................................................\n\n\n## License and Terms of Use\n\nEntropyHub is licensed under the Apache License (Version 2.0) and is free to\nuse by all on condition that the following reference be included on any outputs\nrealized using the software:\n \nMatthew W. Flood (2021)     \n[EntropyHub: An Open-Source Toolkit for Entropic Time Series Analysis,](https://doi.org/10.1371/journal.pone.0259448)     \nPLoS ONE 16(11):e0259448      \nDOI: 10.1371/journal.pone.0259448     \n[www.EntropyHub.xyz](https://www.EntropyHub.xyz)   \n\n__________________________________________________________________\n\n\n        © Copyright 2024 Matthew W. Flood, EntropyHub\n        Licensed under the Apache License, Version 2.0 (the \"License\");\n        you may not use this file except in compliance with the License.\n        You may obtain a copy of the License at\n        \n                 http://www.apache.org/licenses/LICENSE-2.0\n        \n        Unless required by applicable law or agreed to in writing, software\n        distributed under the License is distributed on an \"AS IS\" BASIS,\n        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n        See the License for the specific language governing permissions and\n        limitations under the License.\n        \n        For Terms of Use see https://github.com/MattWillFlood/EntropyHub\n\n\n.........................................................................................................\n\n\n## Contact\n\nIf you find this package useful, please consider starring it on GitHub, \nMatLab File Exchange, PyPI or Julia Packages as this helps us to gauge user \nsatisfaction.\n\nIf you have any questions about the package or identify any issues, \nplease do not hesitate to contact us at:    info@entropyhub.xyz\n\n***Thank you*** for using EntropyHub.\n\nMatt\n\n \n.........................................................................................................\n\n## Functions\n\nEntropyHub functions fall into 8 categories: \n\n    * Base                       functions for estimating the entropy of a single univariate time series.\n    * Cross                      functions for estimating the entropy between two univariate time series.\n    * Multivariate               functions for estimating the entropy of a multivariate dataset.\n    * Bidimensional              functions for estimating the entropy of a two-dimensional univariate matrix.\n    * Multiscale                 functions for estimating the multiscale entropy of a single univariate time series using any of the Base entropy functions.\n    * Multiscale Cross           functions for estimating the multiscale entropy between two univariate time series using any of the Cross-entropy functions.\n    * Multivariate Multiscale    functions for estimating the multivariate multiscale entropy of multivariate dataset using any of the Multivariate-entropy functions.\n    * Other                      Supplementary functions for various tasks related to EntropyHub and signal processing.\n\n#### The following tables outline the functions available in the EntropyHub package.\n\n*When new entropies are published in the scientific literature, efforts will\nbe made to incorporate them in future releases.*\n\n### Base Entropies:\n\nEntropy Type   |  Function Name \n---|---\nApproximate Entropy                               \t  |\tApEn\nSample Entropy                                \t\t  |\tSampEn\nFuzzy Entropy                                 \t\t  |\tFuzzEn\nKolmogorov Entropy                            \t\t  |\tK2En\nPermutation Entropy                           \t\t  |\tPermEn\nConditional Entropy                           \t\t  |\tCondEn\nDistribution Entropy                          \t\t  |\tDistEn\nSpectral Entropy                              \t\t  |\tSpecEn\nDispersion Entropy                            \t\t  |\tDispEn\nSymbolic Dynamic Entropy                          \t  |\tSyDyEn\nIncrement Entropy                                 \t  |\tIncrEn\nCosine Similarity Entropy                         \t  |\tCoSiEn\nPhase Entropy                                             |\tPhasEn\nSlope Entropy                                             |\tSlopEn\nBubble Entropy                                \t\t  |\tBubbEn\nGridded Distribution Entropy                              |\tGridEn\nEntropy of Entropy                                        |\tEnofEn\nAttention Entropy                                         |\tAttnEn\nRange Entropy                                             |     RangEn\nDiversity Entropy                                         |     DivEn\n\n_______________________________________________________________________\n\n### Cross Entropies:\n\nEntropy Type   |  Function Name \n--|--\nCross Sample Entropy                                  |\tXSampEn\nCross Approximate Entropy                             |\tXApEn\nCross Fuzzy Entropy                                   |\tXFuzzEn\nCross Permutation Entropy                             |\tXPermEn\nCross Conditional Entropy                             |\tXCondEn\nCross Distribution Entropy                            |\tXDistEn\nCross Spectral Entropy                          \t  |\tXSpecEn\nCross Kolmogorov Entropy                              |\tXK2En\n\t\n_______________________________________________________________________\n\n### Multivariate Entropies:\n\nEntropy Type   |  Function Name \n--|--\nMultivariate Sample Entropy                                  |\tMvSampEn\nMultivariate Fuzzy Entropy                                   |\tMvFuzzEn\nMultivariate Permutation Entropy                             |\tMvPermEn\nMultivariate Dispersion Entropy                              |\tMvDispEn\nMultivariate Cosine Similarity Entropy                       |\tMvCoSiEn\n\n_______________________________________________________________________\n\n### Bidimensional Entropies\n\nEntropy Type   |  Function Name \n--|--\nBidimensional Sample Entropy                         |\tSampEn2D\nBidimensional Fuzzy Entropy                          |\tFuzzEn2D\nBidimensional Distribution Entropy                   |\tDistEn2D\nBidimensional Dispersion Entropy                     |\tDispEn2D\nBidimensional Permutation Entropy                    |\tPermEn2D\nBidimensional Espinosa Entropy\t                     |\tEspEn2D\n\t\n_________________________________________________________________________\n\n### Multiscale Entropy Functions\n\nEntropy Type   |  Function Name \n--|--\nMultiscale Entropy                                    | MSEn\nComposite/Refined-Composite Multiscale Entropy        | cMSEn\nRefined Multiscale Entropy                            | rMSEn\nHierarchical Multiscale Entropy                 | hMSEn\n\t\n_________________________________________________________________________\n\n### Multiscale Cross-Entropy Functions\nEntropy Type   |  Function Name \n--|--\nMultiscale Cross-Entropy                              |   XMSEn\nComposite/Refined-Composite Multiscale Cross-Entropy  |   cXMSEn\nRefined Multiscale Cross-Entropy                            |   rXMSEn\nHierarchical Multiscale Cross-Entropy                 |   hXMSEn\n\n_________________________________________________________________________\n\n### Multivariate Multiscale Entropy Functions\n\nEntropy Type   |  Function Name \n--|--\nMultivariate Multiscale Entropy                                    | MvMSEn\nComposite/Refined-Composite Multivariate Multiscale Entropy        | cMvMSEn\n\n_________________________________________________________________________\n\n### Other Functions\n\nEntropy Type   |  Function Name \n--|--\nExample Data Import Tool            |  ExampleData\nWindow Data Tool                    |  WindowData\nMultiscale Entropy Object           |  MSobject\n\n\n        \n        \n         ___  _   _  _____  _____  ____  ____  _     _          \n        |  _|| \\ | ||_   _||     \\|    ||    || \\   / |   ___________ \n        | \\_ |  \\| |  | |  |   __/|    ||  __| \\ \\_/ /   /  _______  \\\n        |  _|| \\ \\ |  | |  |   \\  |    || |     \\   /   |  /  ___  \\  |\n        | \\_ | |\\  |  | |  | |\\ \\ |    || |      | |    | |  /   \\  | | \n        |___||_| \\_|  |_|  |_| \\_||____||_|      |_|   _|_|__\\___/  | | \n         _   _  _   _  ____                           / |__\\______\\/  | \n        | | | || | | ||    \\     An open-source      |  /\\______\\__|_/ \n        | |_| || | | ||    |     toolkit for         | |  /   \\  | | \n        |  _  || | | ||    \\     entropic time-      | |  \\___/  | |          \n        | | | || |_| ||     \\    series analysis     |  \\_______/  |\n        |_| |_|\\_____/|_____/                         \\___________/ \n        \n        \n\u003cp  align=\"center\"\u003e\n\t\u003cimg src=\"https://github.com/MattWillFlood/EntropyHub/blob/main/Graphics/EntropyHubLogo3.png\" width=\"250\" height=\"350\"/\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmattwillflood%2Fentropyhub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmattwillflood%2Fentropyhub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmattwillflood%2Fentropyhub/lists"}