{"id":13472888,"url":"https://github.com/aeon-toolkit/aeon","last_synced_at":"2025-12-12T00:39:46.416Z","repository":{"id":65874767,"uuid":"580387696","full_name":"aeon-toolkit/aeon","owner":"aeon-toolkit","description":"A toolkit for machine learning from time series","archived":false,"fork":false,"pushed_at":"2025-04-28T00:47:45.000Z","size":109323,"stargazers_count":1158,"open_issues_count":228,"forks_count":209,"subscribers_count":22,"default_branch":"main","last_synced_at":"2025-04-28T15:22:14.601Z","etag":null,"topics":["data-mining","data-science","machine-learning","scikit-learn","time-series","time-series-analysis","time-series-anomaly-detection","time-series-classification","time-series-clustering","time-series-regression","time-series-segmentation"],"latest_commit_sha":null,"homepage":"https://aeon-toolkit.org/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aeon-toolkit.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":"GOVERNANCE.md","roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2022-12-20T12:44:09.000Z","updated_at":"2025-04-25T19:27:53.000Z","dependencies_parsed_at":"2024-11-05T13:39:23.224Z","dependency_job_id":"05476517-7904-447a-b558-871005a71c94","html_url":"https://github.com/aeon-toolkit/aeon","commit_stats":{"total_commits":4113,"total_committers":308,"mean_commits":"13.353896103896103","dds":0.8205689277899344,"last_synced_commit":"36accdaff11f9013cecdbaaac5a961d65d17c780"},"previous_names":["scikit-time/scikit-time"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aeon-toolkit%2Faeon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aeon-toolkit%2Faeon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aeon-toolkit%2Faeon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aeon-toolkit%2Faeon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aeon-toolkit","download_url":"https://codeload.github.com/aeon-toolkit/aeon/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251336489,"owners_count":21573209,"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":["data-mining","data-science","machine-learning","scikit-learn","time-series","time-series-analysis","time-series-anomaly-detection","time-series-classification","time-series-clustering","time-series-regression","time-series-segmentation"],"created_at":"2024-07-31T16:00:58.761Z","updated_at":"2025-12-12T00:39:46.351Z","avatar_url":"https://github.com/aeon-toolkit.png","language":"Python","funding_links":[],"categories":["Python","📦 Packages","Time Series Analysis","Table of Contents","Frameworks and Libraries"],"sub_categories":["Python","Specialized Machine Learning Libraries","Workshops and Tutorials","Wearable Sensor HAR"],"readme":"\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://aeon-toolkit.org\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/aeon-toolkit/aeon/main/docs/images/logo/aeon-logo-blue-compact.png\" width=\"50%\" alt=\"aeon logo\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n# ⌛ Welcome to aeon\n\n`aeon` is an open-source toolkit for learning from time series. It is compatible with\n[scikit-learn](https://scikit-learn.org) and provides access to the very latest\nalgorithms for time series machine learning, in addition to a range of classical\ntechniques for learning tasks such as forecasting and classification.\n\nWe strive to provide a broad library of time series algorithms including the\nlatest advances, offer efficient implementations using numba, and interfaces with other\ntime series packages to provide a single framework for algorithm comparison.\n\nThe latest `aeon` release is `v1.1.0`. You can view the full changelog\n[here](https://www.aeon-toolkit.org/en/stable/changelog.html).\n\nOur webpage and documentation is available at https://aeon-toolkit.org.\n\nThe following modules are still considered experimental, and the [deprecation policy](https://www.aeon-toolkit.org/en/stable/developer_guide/deprecation.html)\ndoes not apply:\n\n- `anomaly_detection`\n- `forecasting`\n- `segmentation`\n- `similarity_search`\n- `visualisation`\n\n| Overview        |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |\n|-----------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **CI/CD**       | [![github-actions-release](https://img.shields.io/github/actions/workflow/status/aeon-toolkit/aeon/release.yml?logo=github\u0026label=build%20%28release%29)](https://github.com/aeon-toolkit/aeon/actions/workflows/release.yml) [![github-actions-main](https://img.shields.io/github/actions/workflow/status/aeon-toolkit/aeon/pr_pytest.yml?logo=github\u0026branch=main\u0026label=build%20%28main%29)](https://github.com/aeon-toolkit/aeon/actions/workflows/pr_pytest.yml) [![github-actions-nightly](https://img.shields.io/github/actions/workflow/status/aeon-toolkit/aeon/periodic_tests.yml?logo=github\u0026label=build%20%28nightly%29)](https://github.com/aeon-toolkit/aeon/actions/workflows/periodic_tests.yml) [![docs-main](https://img.shields.io/readthedocs/aeon-toolkit/stable?logo=readthedocs\u0026label=docs%20%28stable%29)](https://www.aeon-toolkit.org/en/stable/) [![docs-main](https://img.shields.io/readthedocs/aeon-toolkit/latest?logo=readthedocs\u0026label=docs%20%28latest%29)](https://www.aeon-toolkit.org/en/latest/) [![!codecov](https://img.shields.io/codecov/c/github/aeon-toolkit/aeon?label=codecov\u0026logo=codecov)](https://codecov.io/gh/aeon-toolkit/aeon) [![openssf-scorecard](https://api.scorecard.dev/projects/github.com/aeon-toolkit/aeon/badge)](https://scorecard.dev/viewer/?uri=github.com/aeon-toolkit/aeon) |\n| **Code**        | [![!pypi](https://img.shields.io/pypi/v/aeon?logo=pypi\u0026color=blue)](https://pypi.org/project/aeon/) [![!conda](https://img.shields.io/conda/vn/conda-forge/aeon?logo=anaconda\u0026color=blue)](https://anaconda.org/conda-forge/aeon) [![!python-versions](https://img.shields.io/pypi/pyversions/aeon?logo=python)](https://www.python.org/) [![!black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![license](https://img.shields.io/badge/license-BSD%203--Clause-green?logo=style)](https://github.com/aeon-toolkit/aeon/blob/main/LICENSE) [![binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/aeon-toolkit/aeon/main?filepath=examples)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |\n| **Community**   | [![!slack](https://img.shields.io/static/v1?logo=slack\u0026label=Slack\u0026message=chat\u0026color=lightgreen)](https://join.slack.com/t/aeon-toolkit/shared_invite/zt-22vwvut29-HDpCu~7VBUozyfL_8j3dLA) [![!linkedin](https://img.shields.io/static/v1?logo=linkedin\u0026label=LinkedIn\u0026message=news\u0026color=lightblue)](https://www.linkedin.com/company/aeon-toolkit/) [![!x-twitter](https://img.shields.io/static/v1?logo=x\u0026label=X/Twitter\u0026message=news\u0026color=lightblue)](https://twitter.com/aeon_toolkit)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |\n| **Affiliation** | [![numfocus](https://img.shields.io/badge/NumFOCUS-Affiliated%20Project-orange.svg?style=flat\u0026colorA=E1523D\u0026colorB=007D8A)](https://numfocus.org/sponsored-projects/affiliated-projects)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |\n\n## ⚙️ Installation\n\n`aeon` requires a Python version of 3.9 or greater. Our full installation guide is\navailable in our [documentation](https://www.aeon-toolkit.org/en/stable/installation.html).\n\nThe easiest way to install `aeon` is via pip:\n\n```bash\npip install aeon\n```\n\nSome estimators require additional packages to be installed. If you want to install\nthe full package with all optional dependencies, you can use:\n\n```bash\npip install aeon[all_extras]\n```\n\nInstructions for installation from the [GitHub source](https://github.com/aeon-toolkit/aeon)\ncan be found [here](https://www.aeon-toolkit.org/en/stable/developer_guide/dev_installation.html).\n\n## ⏲️ Getting started\n\nThe best place to get started for all `aeon` packages is our [getting started guide](https://www.aeon-toolkit.org/en/stable/getting_started.html).\n\nBelow we provide a quick example of how to use `aeon` for classification and clustering.\n\n### Classification/Regression\n\nTime series classification looks to predict class labels fore unseen series using a\nmodel fitted from a collection of time series. The framework for regression is similar,\nreplace the classifier with a regressor and the labels with continuous values.\n\n```python\nimport numpy as np\nfrom aeon.classification.distance_based import KNeighborsTimeSeriesClassifier\n\nX = np.array([[[1, 2, 3, 4, 5, 5]],  # 3D array example (univariate)\n             [[1, 2, 3, 4, 4, 2]],   # Three samples, one channel,\n             [[8, 7, 6, 5, 4, 4]]])  # six series length\ny = np.array(['low', 'low', 'high'])  # class labels for each sample\n\nclf = KNeighborsTimeSeriesClassifier(distance=\"dtw\")\nclf.fit(X, y)  # fit the classifier on train data\n\u003e\u003e\u003e KNeighborsTimeSeriesClassifier()\n\nX_test = np.array(\n    [[[2, 2, 2, 2, 2, 2]], [[5, 5, 5, 5, 5, 5]], [[6, 6, 6, 6, 6, 6]]]\n)\ny_pred = clf.predict(X_test)  # make class predictions on new data\n\u003e\u003e\u003e ['low' 'high' 'high']\n```\n\n### Clustering\n\nTime series clustering groups similar time series together from a collection of\ntime series.\n\n```python\nimport numpy as np\nfrom aeon.clustering import TimeSeriesKMeans\n\nX = np.array([[[1, 2, 3, 4, 5, 5]],  # 3D array example (univariate)\n             [[1, 2, 3, 4, 4, 2]],   # Three samples, one channel,\n             [[8, 7, 6, 5, 4, 4]]])  # six series length\n\nclu = TimeSeriesKMeans(distance=\"dtw\", n_clusters=2)\nclu.fit(X)  # fit the clusterer on train data\n\u003e\u003e\u003e TimeSeriesKMeans(distance='dtw', n_clusters=2)\n\nclu.labels_ # get training cluster labels\n\u003e\u003e\u003e array([0, 0, 1])\n\nX_test = np.array(\n    [[[2, 2, 2, 2, 2, 2]], [[5, 5, 5, 5, 5, 5]], [[6, 6, 6, 6, 6, 6]]]\n)\nclu.predict(X_test)  # Assign clusters to new data\n\u003e\u003e\u003e array([1, 0, 0])\n```\n\n## 💬 Where to ask questions\n\n| Type                               | Platforms                         |\n|------------------------------------|-----------------------------------|\n| 🐛 **Bug Reports**                 | [GitHub Issue Tracker]            |\n| ✨ **Feature Requests \u0026 Ideas**     | [GitHub Issue Tracker] \u0026 [Slack]  |\n| 💻 **Usage Questions**             | [GitHub Discussions] \u0026 [Slack]    |\n| 💬 **General Discussion**          | [GitHub Discussions] \u0026 [Slack]    |\n| 🏭 **Contribution \u0026 Development**  | [Slack]                           |\n\n[GitHub Issue Tracker]: https://github.com/aeon-toolkit/aeon/issues\n[GitHub Discussions]: https://github.com/aeon-toolkit/aeon/discussions\n[Slack]: https://join.slack.com/t/aeon-toolkit/shared_invite/zt-22vwvut29-HDpCu~7VBUozyfL_8j3dLA\n\nFor enquiries about the project or collaboration, our email is\n[contact@aeon-toolkit.org](mailto:contact@aeon-toolkit.org).\n\n## 🔨 Contributing to aeon\n\nIf you are interested in contributing to `aeon`, please see our [contributing guide](https://www.aeon-toolkit.org/en/latest/contributing.html)\nand have a read through before assigning an issue and creating a pull request. Be\naware that the `latest` version of the docs is the development version, and the `stable`\nversion is the latest release.\n\nThe `aeon` developers are volunteers so please be patient with responses to comments and\npull request reviews. If you have any questions, feel free to ask using the above\nmediums.\n\n## 📚 Citation\n\nIf you use `aeon` we would appreciate a citation of the following [paper](https://jmlr.org/papers/v25/23-1444.html):\n\n```bibtex\n@article{aeon24jmlr,\n  author  = {Matthew Middlehurst and Ali Ismail-Fawaz and Antoine Guillaume and Christopher Holder and David Guijo-Rubio and Guzal Bulatova and Leonidas Tsaprounis and Lukasz Mentel and Martin Walter and Patrick Sch{{\\\"a}}fer and Anthony Bagnall},\n  title   = {aeon: a Python Toolkit for Learning from Time Series},\n  journal = {Journal of Machine Learning Research},\n  year    = {2024},\n  volume  = {25},\n  number  = {289},\n  pages   = {1--10},\n  url     = {http://jmlr.org/papers/v25/23-1444.html}\n}\n```\n\nIf you let us know about your paper using `aeon`, we will happily list it [here](https://www.aeon-toolkit.org/en/stable/papers_using_aeon.html).\n\n## 👥 Further information\n\n`aeon` was forked from `sktime` `v0.16.0` in 2022 by an initial group of eight core\ndevelopers. You can read more about the project's history and governance structure in\nour [About Us page](https://www.aeon-toolkit.org/en/stable/about.html).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faeon-toolkit%2Faeon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faeon-toolkit%2Faeon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faeon-toolkit%2Faeon/lists"}