Skip to main content

timeseries-shaper filters, transforms and engineer your timeseries dataframe

Project description

timeseries-shaper

Timeseries-Shaper is a Python library for efficiently filtering and preprocessing time series data using pandas. It provides a set of tools to handle various data transformations, making data preparation tasks easier and more intuitive.

Besides that multiple engineering specific methods are utilized to make it fast and easy to work with time series data.

Features | Structure

├── timeseries_shaper
│   ├── __init__.py
│   ├── base.py
│   ├── calculator
│   │   ├── __init__.py
│   │   └── numeric_calc.py
│   ├── cycles
│   │   ├── __init__.py
│   │   ├── cycle_processor.py
│   │   └── cycles_extractor.py
│   ├── events
│   │   ├── __init__.py
│   │   ├── outlier_detection.py
│   │   ├── statistical_process_control.py
│   │   ├── tolerance_deviation.py
│   │   └── value_mapping.py
│   ├── filter
│   │   ├── __init__.py
│   │   ├── boolean_filter.py
│   │   ├── custom_filter.py
│   │   ├── datetime_filter.py
│   │   ├── numeric_filter.py
│   │   └── string_filter.py
│   ├── functions
│   │   ├── __init__.py
│   │   └── lambda_func.py
│   ├── loader
│   │   ├── __init__.py
│   │   ├── metadata
│   │   │   ├── __init__.py
│   │   │   ├── metadata_api_loader.py
│   │   │   └── metadata_json_loader.py
│   │   └── timeseries
│   │       ├── __init__.py
│   │       ├── parquet_loader.py
│   │       ├── s3proxy_parquet_loader.py
│   │       └── timescale_loader.py
│   ├── stats
│   │   ├── __init__.py
│   │   ├── boolean_stats.py
│   │   ├── numeric_stats.py
│   │   ├── string_stats.py
│   │   └── timestamp_stats.py
│   ├── time_stats
│   │   ├── __init__,py
│   │   └── time_stats_numeric.py

Installation

Install timeseries-shaper using pip:

pip install timeseries-shaper

Useage

Here is a quick example to get you started:

import pandas as pd
from timeseries_shaper.filters import IntegerFilter, StringFilter

# Sample DataFrame
data = {
    'value_integer': [1, 2, None, 4, 5],
    'value_string': ['apple', 'banana', None, 'cherry', 'date']
}
df = pd.DataFrame(data)

# Initialize the filter object
integer_filter = IntegerFilter(df)
string_filter = StringFilter(df)

# Apply filters
filtered_integers = integer_filter.filter_value_integer_not_match(2)
filtered_strings = string_filter.filter_value_string_not_match('banana')

print(filtered_integers)
print(filtered_strings)

Documentation

For full documentation, visit GitHub Pages or check out the docstrings in the code.

Contributing

Contributions are welcome! For major changes, please open an issue first to discuss what you would like to change.

Please ensure to update tests as appropriate.

License

Distributed under the MIT License. See LICENSE for more information.

Development

  • Generate new pdocs: .\generate_docs.sh

  • Install package locally: pip install -e .

  • Run tests locally with pytest: pytest ./tests

  • Build package for upload: python setup.py sdist bdist_wheel

  • Upload build package to pypi: twine upload dist/* --verbose --skip-existing

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

timeseries-shaper-0.0.0.13.tar.gz (25.7 kB view details)

Uploaded Source

Built Distribution

timeseries_shaper-0.0.0.13-py3-none-any.whl (49.2 kB view details)

Uploaded Python 3

File details

Details for the file timeseries-shaper-0.0.0.13.tar.gz.

File metadata

  • Download URL: timeseries-shaper-0.0.0.13.tar.gz
  • Upload date:
  • Size: 25.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.5

File hashes

Hashes for timeseries-shaper-0.0.0.13.tar.gz
Algorithm Hash digest
SHA256 1ac4a00811581f7b607088a5aa7bf418ea63f4043fc0dab4156e1399e60c1989
MD5 02a0c21428c4edd8b71fc5191ad54e35
BLAKE2b-256 38a77e48c018f0650aa7d5be1e841208207acba64a44d52beebe67de9303bbe1

See more details on using hashes here.

File details

Details for the file timeseries_shaper-0.0.0.13-py3-none-any.whl.

File metadata

File hashes

Hashes for timeseries_shaper-0.0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 682ad772fa599943bab534e6fba242c70530ff85f2408761cc7446be58254da7
MD5 2c229e144b70e007b4617ffd77d75ad2
BLAKE2b-256 f331e1e2c5e1efe3bacfde41fc85661fc36f0544ebb31df4e814510e20e6855e

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