Skip to main content

A fast and scalable algorithm for time series motif mining.

Project description

This is a python wrapper for ATTIMO, a fast algorithm for mining time series motifs, with probabilistic guarantees.

The inner workings and guarantees of the algorithm are described in this paper.

If you find this software useful for your research, please use the following citation:

@article{DBLP:journals/pvldb/CeccarelloG22,
  author    = {Matteo Ceccarello and
               Johann Gamper},
  title     = {Fast and Scalable Mining of Time Series Motifs with Probabilistic
               Guarantees},
  journal   = {Proc. {VLDB} Endow.},
  volume    = {15},
  number    = {13},
  pages     = {3841--3853},
  year      = {2022},
  url       = {https://www.vldb.org/pvldb/vol15/p3841-ceccarello.pdf},
  timestamp = {Wed, 11 Jan 2023 17:06:38 +0100},
  biburl    = {https://dblp.org/rec/journals/pvldb/CeccarelloG22.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}

Installation

pyATTIMO is a Rust library wrapped in Python. Therefore, if a wheel is available for your platform, you can install it simply by invoking:

pip install pyattimo

Otherwise, you need the Rust toolchain installed to be able to compile it. The simplest way is to visit https://rustup.rs/ and follow the instructions there. You will need the nightly toolchain:

curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain nightly

After that, you can just run:

pip install pyattimo

At this point, you should have the pyattimo library available in your interpreter.

Usage

In essence, the library provides an iterator over the motifs of the given time series. The following snippet illustrates the basic usage:

import pyattimo

# Load an example time series
ts = pyattimo.load_dataset("ecg", prefix=1000000)

# Create the motifs iterator
motifs = pyattimo.MotifsIterator(ts, w=1000, max_k=100)

# Get the top motif via the iterator interface
m = next(motifs)

# Plot the motif just obtained
m.plot()

Further information and examples can be found here

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

pyattimo-0.5.0.tar.gz (155.2 kB view details)

Uploaded Source

Built Distributions

pyattimo-0.5.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ x86-64

pyattimo-0.5.0-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (966.7 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ppc64le

pyattimo-0.5.0-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (930.2 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ i686

pyattimo-0.5.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (923.6 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ARM64

pyattimo-0.5.0-cp37-abi3-macosx_11_0_arm64.whl (784.6 kB view details)

Uploaded CPython 3.7+ macOS 11.0+ ARM64

pyattimo-0.5.0-cp37-abi3-macosx_10_12_x86_64.whl (885.6 kB view details)

Uploaded CPython 3.7+ macOS 10.12+ x86-64

File details

Details for the file pyattimo-0.5.0.tar.gz.

File metadata

  • Download URL: pyattimo-0.5.0.tar.gz
  • Upload date:
  • Size: 155.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.7.0

File hashes

Hashes for pyattimo-0.5.0.tar.gz
Algorithm Hash digest
SHA256 776fb271809fd410e7a8b43aabc005f7ccbb5908d5a496ee7adfed187a69d9ba
MD5 1a5686e98b4cfad716383d5cf1d486b4
BLAKE2b-256 18ce6b654dd9ccc0d33de924e371b056f8b13d305cfc74c4bf13e003832b0604

See more details on using hashes here.

File details

Details for the file pyattimo-0.5.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyattimo-0.5.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aa31f6b8cfa791131de687e9023171498e2e388fc622f094aad6bffbd1b8c6d7
MD5 fd5a0d97416446dff5facf1dfa87a947
BLAKE2b-256 b52c1799f5f2b2e0b5ff98384d44827537fd7691667aae47c1081b762e131d54

See more details on using hashes here.

File details

Details for the file pyattimo-0.5.0-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for pyattimo-0.5.0-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 d108779e6f126c883b7180808f0ff746dde228bdb8831afb7895bfdd3434ec45
MD5 e49366e60e167f88aeb84daca11899fe
BLAKE2b-256 fe0d499cc268270960d4b260a92e710f113afecf8449842408318e129e7434bd

See more details on using hashes here.

File details

Details for the file pyattimo-0.5.0-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pyattimo-0.5.0-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a2c1bfd6da9d7b75f7c2378a69c1f0e07f794f71da5b775e9e899ad9d73cbb69
MD5 10e9e23136c08dcc4e4c32124d2f5806
BLAKE2b-256 0e3d6a7989bd21d8481c98b32f424a4d8405c2c19a2697ce3e80e98a7b22e8f1

See more details on using hashes here.

File details

Details for the file pyattimo-0.5.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyattimo-0.5.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fd4634cf2c8482e33829dd870eeb723229bf5f749daf4e1a8bfe1b1e9069be49
MD5 bea904c9c85d31046d51d2375b187f24
BLAKE2b-256 d8f7c73c9aa3d134696447e014c06de613f4c86e72fd3e20d81ec7af94b69595

See more details on using hashes here.

File details

Details for the file pyattimo-0.5.0-cp37-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyattimo-0.5.0-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9bb2c7825e9d841c29b5b8180e87d2643c68db12ee7565f8da8d8913618e2036
MD5 b42558b2492477c500c6f70eca892d1d
BLAKE2b-256 2ca7103553cea94230e213d066ab6fa2c46476d5be2935df3ae2a08d061be311

See more details on using hashes here.

File details

Details for the file pyattimo-0.5.0-cp37-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyattimo-0.5.0-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9bbc452d062bbb051122bfa77610df5b086b7c429ce0e554bc6e7b1a50b52a0f
MD5 8dfefe7cbcce203b511717ed51838e93
BLAKE2b-256 8b0f639e67de6b4cfad33eb6516c03860915aaef411db477d8b25eb80dafc56a

See more details on using hashes here.

Supported by

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