Skip to main content

Implementation of TACO: A Lightweight Tree-Based Approximate Compression Method for Time Series

Project description

taco-compression

This is the official implementation of the TACO compression algorithm for time series [1].

Usage

There are two usage modes, one as a command line tool operating on files, the other as callables from within python.

Command Line

You can pass the time series to compress in two ways, either by specifying a directory from which all csv files are read...

python -m tacocompression c time_series
python -m tacocompression d time_series

... or by passing the paths to the files directly.

python -m tacocompression data/time_series_1.csv data/time_series_2.csv

Each file must contain a single column interpreted as a univariate time series. We assume row 0 is the header.

As a Callable

from tacocompression import compress, decompress

# 2 univariate time series, length 10 and 8:
time_series = [[0.0, 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7, 8.8, 9.9], [8.8, 7.7, 6.6, 5.5, 4.4, 3.3, 2.2, 1.1]]

compressed = compress(time_series, "szudzik", 1)
reconstructed = decompress(compressed, "szudzik")

assert time_series == reconstructed

[1] Bauer, André. TACO: A Lightweight Tree-Based Approximate Compression Method for Time Series. In: Proceedings of the 14th International Conference on Data Science, Technology and Applications (DATA 2025), pages 182-190. 2025.

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

tacocompression-0.9.1.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

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

tacocompression-0.9.1-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file tacocompression-0.9.1.tar.gz.

File metadata

  • Download URL: tacocompression-0.9.1.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for tacocompression-0.9.1.tar.gz
Algorithm Hash digest
SHA256 b901cc1de149f446181a11f90b84357294b796c81e9143ace95f2f7bd97e1df9
MD5 696e794f0306fb96e10ec02a16c0a966
BLAKE2b-256 74c49065ff5f8b6588e61736714fb3aee4cb50c9f370b7f6f0eedb167fa9cba2

See more details on using hashes here.

File details

Details for the file tacocompression-0.9.1-py3-none-any.whl.

File metadata

File hashes

Hashes for tacocompression-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e4d01c5262bd3c0cc477c5ef7f9618d4cee05adde6e2454d436e5a271000b671
MD5 daded203d49be7b31b15b92384160d27
BLAKE2b-256 55b4526bea0e87c190723aa1c27f5e979615b1346bcc913bf1095b9b5e61cc35

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