Skip to main content

A unified framework for machine learning with time series

Project description

aeon logo

⌛ Welcome to aeon

aeon is an open source toolkit for learning from time series compatible with scikit-learn. It provides access to the very latest algorithms for time series machine learning, in addition to a range of classical techniques for learning tasks such as forecasting and classification.

We strive to provide a broad library of time series algorithms including the latest advances, offer efficient implementations using numba, and interfaces with other time series packages to provide a single framework for algorithm comparison.

The latest aeon release is v0.3.0. You can view the full changelog here.

- The deprecation policy is currently suspended, be careful with the version bounds used when including aeon as a dependency.
- The policy will return at a future point, but in the mean time the suspension allows us to quickly develop and maintain the package in the forking transition period.

Our webpage and documentation is available at https://aeon-toolkit.org.

Overview
CI/CD github-actions-release github-actions-main docs-main docs-main !codecov
Code !pypi !python-versions !black license binder
Community !slack !linkedin !twitter

⚙️ Installation

aeon requires a Python version of 3.8 or greater. Our full installation guide is available in our documentation.

The easiest way to install aeon is via pip:

pip install aeon

Some estimators require additional packages to be installed. If you want to install the full package with all optional dependencies, you can use:

pip install aeon[all_extras]

⏲️ Getting started

The best place to started for all aeon packages is our getting started guide.

Below we provide a quick example of how to use aeon for forecasting and classification.

Forecasting

import pandas as pd
from aeon.forecasting.trend import TrendForecaster

y = pd.Series([20.0, 40.0, 60.0, 80.0, 100.0])
>>> 0     20.0
>>> 1     40.0
>>> 2     60.0
>>> 3     80.0
>>> 4    100.0
>>> dtype: float64

forecaster = TrendForecaster()
forecaster.fit(y)  # fit the forecaster
>>> TrendForecaster()

pred = forecaster.predict(fh=[1, 2, 3])  # forecast the next 3 values
>>> 5    120.0
>>> 6    140.0
>>> 7    160.0
>>> dtype: float64

Classification

import numpy as np
from aeon.classification.distance_based import KNeighborsTimeSeriesClassifier

X = [[[1, 2, 3, 4, 5, 5]],  # 3D array example (univariate)
     [[1, 2, 3, 4, 4, 2]],  # Three samples, one channel, six series length,
     [[8, 7, 6, 5, 4, 4]]]
y = ['low', 'low', 'high']  # class labels for each sample
X = np.array(X)
y = np.array(y)

clf = KNeighborsTimeSeriesClassifier(distance="dtw")
clf.fit(X, y)  # fit the classifier on train data
>>> KNeighborsTimeSeriesClassifier()

X_test = np.array(
    [[[2, 2, 2, 2, 2, 2]], [[5, 5, 5, 5, 5, 5]], [[6, 6, 6, 6, 6, 6]]]
)
y_pred = clf.predict(X_test)  # make class predictions on new data
>>> ['low' 'high' 'high']

💬 Where to ask questions

Type Platforms
🐛 Bug Reports GitHub Issue Tracker
Feature Requests & Ideas GitHub Issue Tracker & Slack
💻 Usage Questions GitHub Discussions & Slack
💬 General Discussion GitHub Discussions & Slack
🏭 Contribution & Development Slack

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aeon-0.3.0.tar.gz (28.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aeon-0.3.0-py3-none-any.whl (28.8 MB view details)

Uploaded Python 3

File details

Details for the file aeon-0.3.0.tar.gz.

File metadata

  • Download URL: aeon-0.3.0.tar.gz
  • Upload date:
  • Size: 28.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for aeon-0.3.0.tar.gz
Algorithm Hash digest
SHA256 6226917bb843358c5e5b841d61111d2691c1c50a7de639c4ff16b3e7b4e31412
MD5 ac64904ec313cd22010ce694e0565349
BLAKE2b-256 351e4ccf56f317a2de7efb56ff0f96674b555a6ab44eb22161210012853ad022

See more details on using hashes here.

File details

Details for the file aeon-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: aeon-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 28.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.4

File hashes

Hashes for aeon-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 58a9b2caa735c22dcf7f0e0358121ce3a4619dbc8ad658de1ed06778cb70f193
MD5 2e02f692fffbf9cd4d089c21897f7e5f
BLAKE2b-256 2607db8e6bb1ed7b7efaf2ea91f02ccf2920e2a35a34a39c7cc3aeb5c84ed233

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page