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

Uploaded Source

Built Distributions

pyattimo-0.6.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

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

pyattimo-0.6.1-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (990.4 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ppc64le

pyattimo-0.6.1-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (949.2 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ i686

pyattimo-0.6.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (934.2 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ARM64

pyattimo-0.6.1-cp37-abi3-macosx_11_0_arm64.whl (806.0 kB view details)

Uploaded CPython 3.7+ macOS 11.0+ ARM64

pyattimo-0.6.1-cp37-abi3-macosx_10_12_x86_64.whl (911.8 kB view details)

Uploaded CPython 3.7+ macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for pyattimo-0.6.1.tar.gz
Algorithm Hash digest
SHA256 dab2a1badeb2bb8e074665aad8239d432c151f7dae1675319988ae398c733f1c
MD5 efaac987b62844ea520c826334bcbb25
BLAKE2b-256 593669253ff8e8ae826941a4a4ce9a7a9ea04ac2c139a5d1fd00657681ceb5d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 393adbfb173abcb9f9649c7de688b8ea238d78558d9ee8196d58d1132f52670e
MD5 fcdaf0a519a52ce9a024e5ccb6c3a919
BLAKE2b-256 b6a23078c16adde5807e890460daa24cda5735b11dfc69b166c3cf40b98f52f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.1-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 163bbe8f3e0103d0511bc6f1afcc476fa0e63c7cfb79cb8c952ef8a8a2ce91fb
MD5 603ad472431d4c980f2f8d31a5d48204
BLAKE2b-256 6814b9e44704f68c90473e1901907147fcc66a9b8b1dc92be6dd1002645d5655

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.1-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e92c7831e1e9443eac45c7de8129806551761674f8b1786162c34e81af6c0d99
MD5 cedf999f5d6ee8e4698449bc5cc0cb81
BLAKE2b-256 6de717fec32c73c8b2c9080845d6b3b96be4f56ed0960e26b344692cf86ad64f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6b63373108100c006b6e70b21612765c4ae28123294c6e1796f83a42c3fb2fe0
MD5 2034ed27d12fe3de6e37ef1e4c942125
BLAKE2b-256 db415038a8302fb403ac18fa21e0182038d21afe237b3e6820f5f433f5544987

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.1-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 708f0130975503a9419c763d57194652ed09365c5757e61c497885e57285e19e
MD5 f296775544887d62279e22533df7e285
BLAKE2b-256 caca20a8566ae3f449f9594064b7f63469e2a653754e20a02705c54507d057f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.1-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0d08698411828b36dd80e61bef237b48b3e8c78101712c6dbfc7a812b35a2f4e
MD5 7d1cbf095f446f4b14ba5a178f7f966c
BLAKE2b-256 1f4b4e00a58bc5bbf2d0a60feab2382cd3f9cf08c7c4f3c191f1787027fa50c0

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