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

Uploaded Source

Built Distributions

pyattimo-0.6.0-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.0-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (989.0 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ppc64le

pyattimo-0.6.0-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (949.9 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ i686

pyattimo-0.6.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (943.4 kB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ ARM64

pyattimo-0.6.0-cp37-abi3-macosx_11_0_arm64.whl (809.3 kB view details)

Uploaded CPython 3.7+ macOS 11.0+ ARM64

pyattimo-0.6.0-cp37-abi3-macosx_10_12_x86_64.whl (916.1 kB view details)

Uploaded CPython 3.7+ macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for pyattimo-0.6.0.tar.gz
Algorithm Hash digest
SHA256 c1317a239af4571df1cf6a71e16d0c68cfd6573319c69109788687160a3ee91f
MD5 231c570bfc9fb3e4fd90298db6aab928
BLAKE2b-256 0c754e5d48ed2e4d14f7a77b16b4c2a40dd4865e6d10e2cf8ce3344a124200bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7a862ebd01248636aace4f3ebb0db75ce1017eb667503fe80b81d5cd580c87fe
MD5 0b9de0436a43323dc26ed2996ae63519
BLAKE2b-256 a272adb9fdd25b7887b23ed4d516cce435f886f64b2daca8d950acb1752b05d8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.0-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 659c12e222b2467426fd4877ef3f29b9cbb72ed145f5662d39131b01f20d43b9
MD5 c36c19bd87cc8c0b13f400e8cdd89074
BLAKE2b-256 5114f0a6471933f261e6c4762d564bf234d2ba3efd1e2169086397f391da583c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.0-cp37-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 044b9937913306cd4494f107b454e045792cdf0275cca4291cacdd51714c1163
MD5 e05f909ed4a6ea688eccba66d4010925
BLAKE2b-256 20ccf765ef0c6c647154b19c340fa9cf6cabb18b535a499f3174e8ab85472ac7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cd5eac91d100a9e53a1368235bf8fd72a11c56a82b3493a399d9a1e3295b8f4c
MD5 e0ef58169579ce7b8a685d7941db8612
BLAKE2b-256 cf97c6e251148a57fab266e031be354a37da89275e300cedca9f97eca2d2507d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.0-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ff09944a8756f3077f4d01492c888d8be12b7cc43c919e429e1de456a21c7394
MD5 7b7c0e41ad8a37ae06a129b53bc9f9d3
BLAKE2b-256 134401e8e5a1d41c1a00495e1168d811b3c33be8dfe8206e38094909e1c50494

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyattimo-0.6.0-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b63aec5684382be2f1185d4a6f1b99cea903f38cf41c5acf6498c1d6569304aa
MD5 56399de1b8046d673532610e7237bb6e
BLAKE2b-256 8af1cf7404106970167bf674b90ed732eb8c6e83892f78a32d443cbdb12c21c0

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