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

Uploaded Source

Built Distribution

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

Uploaded CPython 3.10 manylinux: glibc 2.34+ x86-64

File details

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

File metadata

  • Download URL: pyattimo-0.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 562a4abb6a720ab79ddeef85a2bffa68f588ff8353f00ff0b68d0c8caa1c3cea
MD5 8d74ac336f3bff00d17e3b0d561b212c
BLAKE2b-256 8d0a9a43f7278099e488ffa360187dda98876fb3a18670fe3d0bdc8dd12ba626

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.1.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 1e6c22a088663e486438fc4f546046104238a2df1acc2c78adb4283de8161908
MD5 41bc252138969eb31425027084b1abcb
BLAKE2b-256 bfd0d5e509d669369caa21f363d22ec7815c8f5850d8d156bb9e66affa5a4c24

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