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.1.1.tar.gz (3.5 MB view details)

Uploaded Source

Built Distributions

pyattimo-0.1.1-cp310-cp310-manylinux_2_34_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.34+ x86-64

pyattimo-0.1.1-cp37-abi3-musllinux_1_2_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.7+ musllinux: musl 1.2+ x86-64

pyattimo-0.1.1-cp37-abi3-musllinux_1_2_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.7+ musllinux: musl 1.2+ ARM64

pyattimo-0.1.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

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

pyattimo-0.1.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ARM64

File details

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

File metadata

  • Download URL: pyattimo-0.1.1.tar.gz
  • Upload date:
  • Size: 3.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/0.14.13

File hashes

Hashes for pyattimo-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a01728217835da8da50c8ea055def3a0ffb51d60b9ef83e3a875d0bea9ef56f4
MD5 6b1d14961bc49013b256f0e5220ddbc6
BLAKE2b-256 55cbbcd9432c4c0d02612d03fa9ec3cc09a0cb601aef4729e7d47d4e890d6fa0

See more details on using hashes here.

File details

Details for the file pyattimo-0.1.1-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pyattimo-0.1.1-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 b167e2504f07f0d4dc9ea653cf13a7c7e83224a7f52bb45ffc0df751a74799bf
MD5 0a330f53ee649521d230a7dd84fa9b93
BLAKE2b-256 b71691db28c3d857405f7690eb965eb1734479aecab09c200bc25fd36a1e8f86

See more details on using hashes here.

File details

Details for the file pyattimo-0.1.1-cp37-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyattimo-0.1.1-cp37-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a7d36d7c95924b3cd3c50d54b7d8c2a79d13ef3d5510aab14da4e910db0f70a1
MD5 0685c46667286eb2811927fae44236d9
BLAKE2b-256 41f98ad64c037443e621f72622b9ff8f996509458f06494cb03c58c5e0189700

See more details on using hashes here.

File details

Details for the file pyattimo-0.1.1-cp37-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyattimo-0.1.1-cp37-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d10e812e36dd1b17ac99dfe0ad6d36ce3fe3778c3676d01c79f6d5ac58da8176
MD5 1f5ba4eae7d5cbb08525a94eabb82449
BLAKE2b-256 c79ba57f8bdd407d827075237f9475f86a2a82bc2fb0ce839406f597ee31fc67

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.1.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 29b6abb5a42d3e37f9a951d83c9c240f956c5fd225cbbc7d3d020a7a49b72447
MD5 28501b1bc957737f0e21fd3b3430125f
BLAKE2b-256 354efbcf068f0c9ec032d4d23318d69b71402228674fe0b77c4bf170a4ce200c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.1.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fb30375e798f443f64060c23616754a56230bf3915f9124660e8948df5d7a65a
MD5 1db6e8472b2819236d4df760a81d66a2
BLAKE2b-256 fd4bf002dcf8a348eb955757329a5800626236902554e063745ad72b95e2f549

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