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

Uploaded Source

Built Distributions

pyattimo-0.3.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB view details)

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

pyattimo-0.3.1-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.5 MB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ppc64le

pyattimo-0.3.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.3 MB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ARM64

pyattimo-0.3.1-cp37-abi3-manylinux_2_12_i686.manylinux2010_i686.whl (2.3 MB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.12+ i686

pyattimo-0.3.1-cp37-abi3-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.7+ macOS 11.0+ ARM64

pyattimo-0.3.1-cp37-abi3-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.7+ macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for pyattimo-0.3.1.tar.gz
Algorithm Hash digest
SHA256 08f87fa28650aa0b7e39510a2739f72b4079b2a1b22ee8910c9851512d908147
MD5 e2ff4a0c5e158f12f51419362eeec43e
BLAKE2b-256 9c95ae9446ad80671aa49f7bcba2d63be0daf86982ddc1295248fe77bdce61f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.3.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9401de67e4e2ec1a89ce235a823d87e727dc15763354464745c26726413e51eb
MD5 e7cf7a2b76ac36a957876d8aa5d43327
BLAKE2b-256 686bfc8e5c957f71c8961d2d7e32da96cad4f55404b3e93d5f8d674e24bac8ad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.3.1-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 abbdec2889d3a1d9f5c44bff496ec5fbbd3359e1a42c53223be57b3ea84b847e
MD5 f4ab34d3a817a74780464aaa24d2a421
BLAKE2b-256 6bdde400a73ea2f422915d258702b65ff714468ff24f450606c94170d6ae6480

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.3.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d552da6e93fe675db520b7bfb2fd56c7423d565be52372b0dfd21eff71bfbc35
MD5 1844417f43337f34dc2e8074fc223917
BLAKE2b-256 08b8a514be1e03f263796aff8a4191c11fa42762ac6e78f7959a71e3c53e5334

See more details on using hashes here.

File details

Details for the file pyattimo-0.3.1-cp37-abi3-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for pyattimo-0.3.1-cp37-abi3-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 656ef22a78ccdaff8241227f7c7bbd247e4d8be3fc488cfa9b7505a169c5da7e
MD5 02feb65337ea47bf35583766589dbc2f
BLAKE2b-256 e199639620199cfc009b27bb1b8018b5c10185be552ecdcc719ab2cb768d543a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.3.1-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 303b49013dd2c8b6ba0a40c3d058c7b2752ea4f17d141e5d65fa484c0ba53d15
MD5 6c3dc5df79c32b3ba166f92d439a7036
BLAKE2b-256 8c6aba02109fce8275be378422b96ffa4acad1a7b0be48bfdca66e87dcf78848

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.3.1-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d17bb91e469b8122d5fc28ae88bfbac4182140d35c68e8aec37dde98572933d7
MD5 e098c1d6d70c6d41d44c029d54b4a561
BLAKE2b-256 f942e3fd16706f173c389d714cb194f0c73c4ff567033cef77acd25923f42f21

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