Skip to main content

High-performance time series feature extraction library with parallel processing

Project description

Kalax Python Interface

Python bindings for Kalax, a high-performance time series feature extraction library written in Rust.

Overview

Kalax provides fast, parallelized extraction of statistical features from time series data. The Python interface offers the same functionality as the Rust core with minimal overhead.

Installation

[uv] pip install kalax

Quick Start

import numpy as np
from kalax import extract_features

x = np.linspace(0, 1, 100)
y = np.sin(2 * np.pi * 5 * x) + 0.5
data = [{"x": x, "y": y}]
features = extract_features(data)

API

extract_features(data)

Extracts features from multiple time series in parallel.

Parameters:

  • data (List[Dict[str, np.ndarray]]): A list of dictionaries where each dictionary maps column names to 1D numpy arrays representing time series data.

Returns:

  • List[Dict[str, Dict[str, float]]]: A list of dictionaries where each entry corresponds to an input dictionary. Feature names are mapped to dictionaries containing computed feature values.

Available Features

Feature Description
mean Arithmetic average of time series values
median Middle value when time series is sorted
variance Population variance
standard_deviation Square root of variance
minimum Smallest value in time series
maximum Largest value in time series
absolute_maximum Largest absolute value
root_mean_square RMS value
sum_values Sum of all values
length Number of data points

Example

import numpy as np
from kalax import extract_features

x = np.linspace(0, 1, 100)
y = np.sin(2 * np.pi * 5 * x) + 0.5
data = [{"x": x, "y": y}]
features = extract_features(data)

print(features[0]["x"]["mean"])       # Access specific feature
print(features[0]["y"]["variance"])   # Access another feature

Output Structure

[
    {
        'column_name': {
            'mean': 0.5,
            'median': 0.5,
            'variance': 0.085,
            'standard_deviation': 0.292,
            'minimum': 0.0,
            'maximum': 1.0,
            'absolute_maximum': 1.0,
            'root_mean_square': 0.579,
            'sum_values': 50.0,
            'length': 100.0
        }
    }
]

Requirements

  • Python 3.12+
  • numpy

License

MIT

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

kalax-0.1.1.tar.gz (14.9 kB view details)

Uploaded Source

Built Distributions

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

kalax-0.1.1-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl (568.3 kB view details)

Uploaded PyPymusllinux: musl 1.2+ x86-64

kalax-0.1.1-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl (537.3 kB view details)

Uploaded PyPymusllinux: musl 1.2+ ARM64

kalax-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl (566.1 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

kalax-0.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl (534.8 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

kalax-0.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl (565.8 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

kalax-0.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl (534.3 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

kalax-0.1.1-cp312-abi3-win_arm64.whl (180.1 kB view details)

Uploaded CPython 3.12+Windows ARM64

kalax-0.1.1-cp312-abi3-win_amd64.whl (185.8 kB view details)

Uploaded CPython 3.12+Windows x86-64

kalax-0.1.1-cp312-abi3-musllinux_1_2_x86_64.whl (565.9 kB view details)

Uploaded CPython 3.12+musllinux: musl 1.2+ x86-64

kalax-0.1.1-cp312-abi3-musllinux_1_2_aarch64.whl (534.1 kB view details)

Uploaded CPython 3.12+musllinux: musl 1.2+ ARM64

kalax-0.1.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (369.1 kB view details)

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

kalax-0.1.1-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (352.3 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ ARM64

kalax-0.1.1-cp312-abi3-macosx_11_0_arm64.whl (310.2 kB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

File details

Details for the file kalax-0.1.1.tar.gz.

File metadata

  • Download URL: kalax-0.1.1.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0d5aa8dfe8770485550fa857930f4f2d73c8eb15b14bdc4cad71c40daaeff51f
MD5 827aa284d004d6ffdf3dedc0baa72cf6
BLAKE2b-256 3d0121b02295ce097b6afa151aee738b0a1ff2b2bd9fd9fb069c5f485e1f8f09

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: kalax-0.1.1-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 568.3 kB
  • Tags: PyPy, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dfe18049a47f8613dfaea8a5d088b90c678c907d7d586e463972e83259c1bc76
MD5 c01f2c071df10abe78d820354c0586fa
BLAKE2b-256 302124faff01def629ee2b050ad408ccc1999511cb8633de63e9ab1aa978e7c4

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: kalax-0.1.1-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 537.3 kB
  • Tags: PyPy, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 774de16bec9c7496437d82787a6641d42d212a85deea541bb3da3c48cfb6a2a5
MD5 6162b5e6b6a19afa361b7f79159235b6
BLAKE2b-256 30e1360189527cb4ba74d0422cfe83649d7e10482fb5e5eeb06050284bc56457

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 566.1 kB
  • Tags: CPython 3.14t, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0137515037b9a101f3d117e4c739eacb0acb65614fac8d5e29b5c9459660a35a
MD5 343088724cb5879cc1c1dc587a78363f
BLAKE2b-256 20c2f332eb558020dd16dc5b1255a26088d3c6977b1e2047180e10eb8165df7a

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 534.8 kB
  • Tags: CPython 3.14t, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 9b418e07b7676d7e3e7885e9b1d895ae1796dd956928bbf3cb26a7caa4d64469
MD5 e21a68e61962d3c1ddaf49231fbf3c22
BLAKE2b-256 bf30f862fe8f45323fcb5073810feb78651a6117c0920d0510a14198d92dd983

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 565.8 kB
  • Tags: CPython 3.13t, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1856256b69fda0d1c725face1fbf7de81712138383ce1e4beed4a9d57cf6a71b
MD5 e0778c3d28e6a13b046844a3098ebd0c
BLAKE2b-256 f6823784977cac0af0c7eff3a84358b4f420351a3a7fee2d7acb1e1a0c1aeeef

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 534.3 kB
  • Tags: CPython 3.13t, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 eec76b0a428cf799997ac826f7d9dbda777f38f58cc875007edc81f167feb871
MD5 50c086f751b0b22f2b3f24204aa1747a
BLAKE2b-256 cb005d0d402ed029cd47f987f6342e05e7716a94676d71bcf3bbffd0fd6e809f

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp312-abi3-win_arm64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp312-abi3-win_arm64.whl
  • Upload date:
  • Size: 180.1 kB
  • Tags: CPython 3.12+, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp312-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 bc3d38f8489563064af8873cf307f300c9ce391719802b09f3cb591205ff71d0
MD5 09c4658cd65effb0c723937ec7bf530e
BLAKE2b-256 b2276267bcd77a90f52d7fd83b85ffa70a8281aa6bac53cb04eec7fe26e9ab4b

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp312-abi3-win_amd64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp312-abi3-win_amd64.whl
  • Upload date:
  • Size: 185.8 kB
  • Tags: CPython 3.12+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 6f7f70636112a14d34de3b28baabbfd9effc6290ed5cb22189af891123f00da7
MD5 61fd8cc5d071863e83f9ef66279a1b7e
BLAKE2b-256 103125bae72269644f4898c9a8eaf224ce5d3e0490f4354f0e5d03542ebf38dd

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp312-abi3-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp312-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 565.9 kB
  • Tags: CPython 3.12+, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp312-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0ba5a51596580c55cc7239b7337153c66bdab0474d3ddf45213b86dcff0825ba
MD5 4d7474d6c258f8771dff6fc74a20e342
BLAKE2b-256 697e9a1f1daa3ab1899ff9f35275c9e5b78de7ee4fb2072b45df5df7e0cf0453

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp312-abi3-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp312-abi3-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 534.1 kB
  • Tags: CPython 3.12+, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp312-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4ad6a7c4af5b8ff5731504a4e45bbb985e9ab735c712f8fb72ee2b4b2f01b1b8
MD5 3665ef5724b12c522b05c1d2866abadc
BLAKE2b-256 38228d75033a1fdc2bdb1a97f3094be83bb1dffc6dec695b1f60548d63100bd2

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 369.1 kB
  • Tags: CPython 3.12+, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eb2b77a9b8140343e80e9a2987f25abbf771c15303c9072e6ed82939ce0126fb
MD5 799244393da52933b68b3208cc47b3f4
BLAKE2b-256 a2669629cf356ba91552da8d75f7987d22a59b7a877592a2b6b019bdb7941dab

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 352.3 kB
  • Tags: CPython 3.12+, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d4caa7e4a206016b947aaa39fe16d5dbda6ea7a0775cd434d8dadd2ae6c8e7be
MD5 35d0bbf14078de752058e7710a0117fc
BLAKE2b-256 f6a7c624cbdf7a757955c4368cd627a332c3e161494a3e351ab44b77e867cfce

See more details on using hashes here.

File details

Details for the file kalax-0.1.1-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: kalax-0.1.1-cp312-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 310.2 kB
  • Tags: CPython 3.12+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kalax-0.1.1-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9dcfb94820e2105fddf746d5eee2339328a16a008a04f1b5454b86be890081de
MD5 b21b48f1baf421be5dfa966585076745
BLAKE2b-256 17a352db658b6d648a92f14aefe197b61a2768f20e6628550d674944407ea250

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