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.7.0.tar.gz (161.9 kB view details)

Uploaded Source

Built Distributions

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

pyattimo-0.7.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.4 MB view details)

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

pyattimo-0.7.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (7.9 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARM64

pyattimo-0.7.0-cp37-abi3-macosx_11_0_arm64.whl (852.1 kB view details)

Uploaded CPython 3.7+macOS 11.0+ ARM64

pyattimo-0.7.0-cp37-abi3-macosx_10_12_x86_64.whl (964.3 kB view details)

Uploaded CPython 3.7+macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for pyattimo-0.7.0.tar.gz
Algorithm Hash digest
SHA256 3329d51a55cf4a9c447a2c7c73d98cfd4895fecf6d38efbd4d071b61cb92cc9e
MD5 9761d4dc8720bf9f24ad613936a9c2fd
BLAKE2b-256 912e2a75cb52d51158f770f5a6829070b115e5bafe76187af92be609b59519c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.7.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ad9313adfe4ace906bff2b1dcacacfe334a0dc14504878c8d34716aa6082cae2
MD5 4ee26f9e9ef2ae3b71eb4c5dba4ce7b9
BLAKE2b-256 b7d6ef26b77b15810b50c2120694715244e51a9cb54d426a175d3fe9673137db

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.7.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bbd202d96cccae5f029b9ec18bf57fd8ce50e2188b870c74e13e9538e63008da
MD5 d8a4ff7a77c5356466aaa100f2438ccc
BLAKE2b-256 776cee2495e7b747116fb06ceca2a8694da2d9f1a56976c10755fd737b274aab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.7.0-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 42493a3576c521def5e2bddfd6a52d1feb59397bec4b2d480db8879e7ea1048b
MD5 be8613156e7a91974f8095b48a3f1ed6
BLAKE2b-256 07df56e6e43faca093f6fc6a9730823d0bc30a7b958c9a2ad6c9232f5d77fee8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.7.0-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 65d26d6567202c7974d9004063444bfb5fc025b92e9c7561780ce66cdf0d702f
MD5 75f9a74480ad2d5ca1d94666288fb32d
BLAKE2b-256 d2db1e362605127cc9cbec8a268fa39cb243270584dc3e7a657a6eee437d92ee

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