Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Time series symbolic discretization with SAX

Latest PyPI version Latest Travis CI build status https://codecov.io/gh/seninp/saxpy/branch/master/graph/badge.svg http://img.shields.io/:license-gpl2-green.svg
This code is released under GPL v.2.0 and implements in Python:
  • Symbolic Aggregate approXimation (i.e., SAX) stack [LIN2002]

  • a simple function for time series motif discovery [PATEL2001]

  • HOT-SAX - a time series anomaly (discord) discovery algorithm [KEOGH2005]

[LIN2002]

Lin, J., Keogh, E., Patel, P., and Lonardi, S., Finding Motifs in Time Series, The 2nd Workshop on Temporal Data Mining, the 8th ACM Int’l Conference on KDD (2002)

[PATEL2001]

Patel, P., Keogh, E., Lin, J., Lonardi, S., Mining Motifs in Massive Time Series Databases, In Proc. ICDM (2002)

[KEOGH2005]

Keogh, E., Lin, J., Fu, A., HOT SAX: Efficiently finding the most unusual time series subsequence, In Proc. ICDM (2005)

Note that the most of the library’s functionality is also available in R and Java

Citing this work:

If you are using this implementation for you academic work, please cite our Grammarviz 2.0 paper:

[SENIN2014]

Senin, P., Lin, J., Wang, X., Oates, T., Gandhi, S., Boedihardjo, A.P., Chen, C., Frankenstein, S., Lerner, M., GrammarViz 2.0: a tool for grammar-based pattern discovery in time series, ECML/PKDD, 2014.

In a nutshell

SAX is used to transform a sequence of rational numbers (i.e., a time series) into a sequence of letters (i.e., a string) which is (typically) much shorterthan the input time series. Thus, SAX transform addresses a chief problem in time-series analysis – the dimensionality curse.

This is an illustration of a time series of 128 points converted into the word of 8 letters:

SAX in a nutshell

SAX in a nutshell

As discretization is probably the most used transformation in data mining, SAX has been widely used throughout the field. Find more information about SAX at its authors pages: SAX overview by Jessica Lin, Eamonn Keogh’s SAX page, or at sax-vsm wiki page.

Installation

$ pip install saxpy

Requirements

Compatibility

Licence

GNU General Public License v2.0

Authors

saxpy was written by Pavel Senin.

Release files for saxpy 1.0.1.dev167

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for saxpy 1.0.1.dev167
File Size Uploaded
saxpy-1.0.1.dev167.tar.gz 179.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for saxpy 1.0.1.dev167
File Interpreter ABI Platform
saxpy-1.0.1.dev167-py2-none-any.whl Python 2 none any Details

Total release size: 191.9 kB

Release files / saxpy-1.0.1.dev167.tar.gz

Download URL saxpy-1.0.1.dev167.tar.gz
Size 179.0 kB
Tags Source
SHA-256 checksum
How to use checksums
1e223cacd9404f366434be3137224356568d2ef3d4ab88d8412ef7ab91405744
BLAKE2b-256 checksum
How to use checksums
c106c912c97c8348ffabf47b7c010f400574ef9fcf38ba33b449437e58b60c48
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / saxpy-1.0.1.dev167-py2-none-any.whl

Download URL saxpy-1.0.1.dev167-py2-none-any.whl
Size 12.9 kB
Tags Python 2
SHA-256 checksum
How to use checksums
dcab8e87c9a6aa67f9ae1940ed9d5eb9f222f8952e05eb473e85a6d9fc2f7155
BLAKE2b-256 checksum
How to use checksums
121451ecabac7245f2ff83965a70df93e41fa4cd358ac0c5b317c4e6c411f459
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

2.0.1

2 release files

2.0.0

2 release files

This release

1.0.1.dev167 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page