Skip to main content

22 CAnonical Time-series Features

Project description

pycatch22 - CAnonical Time-series CHaracteristics in python

About

catch22 is a collection of 22 time-series features coded in C that can be run from Python, R, Matlab, and Julia.

This package provides a python implementation as the module pycatch22.

For details about the features, see the main catch22 repository and its wiki, or read the paper:

Installation

Using pip for pycatch22:

pip install pycatch22

Testing

python3 tests/testing.py

If pycatch22 is installed correctly, this should output results for 24 features for each of two test time series.

Usage

Each feature function can be accessed individually and takes arrays as tuple or lists (not numpy arrays). For example, for loaded data tsData in Python:

import pycatch22
tsData = [1,2,4,3] # (or more interesting data!)
pycatch22.CO_f1ecac(tsData)

All features are bundled in the method catch22_all, which also accepts numpy arrays and gives back a dictionary containing the entries catch22_all['names'] for feature names and catch22_all['values'] for feature outputs. Usage:

pycatch22.catch22_all(tsData)

Usage notes

  • When presenting results using catch22, you must identify the version used to allow clear reproduction of your results. For example, CO_f1ecac was altered from an integer-valued output to a linearly interpolated real-valued output from v0.3.
  • Important Note: catch22 features only evaluate dynamical properties of time series and do not respond to basic differences in the location (e.g., mean) or spread (e.g., variance).
    • From catch22 v0.3, If the location and spread of the raw time-series distribution may be important for your application, we suggest applying the function argument catch24 = True to your call to the catch22 function in the language of your choice. This will result in 24 features being calculated: the catch22 features in addition to mean and standard deviation.

Manual install

If you find issues with the pip install, you can also install using setuptools:

python3 setup.py build
python3 setup.py install

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

pycatch22-0.4.2.tar.gz (49.0 kB view hashes)

Uploaded Source

Built Distributions

pycatch22-0.4.2-cp311-cp311-macosx_11_0_arm64.whl (47.0 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

pycatch22-0.4.2-cp39-cp39-macosx_12_0_x86_64.whl (60.1 kB view hashes)

Uploaded CPython 3.9 macOS 12.0+ x86-64

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