Skip to main content

Python Package for automated multivariate Time Series imputation

Project description

Project Status: Active The project has reached a stable, usable state and is being actively developed. GitHub release (latest by date including pre-releases) GitHub last commit GitHub pull requests GitHub contributors codesize

TimeWeaver: Automated time series imputation TimeWeaver Logo

TimeWeaver is a Python library designed for multivariate time series data analysis, specifically addressing the challenges of machine process environmental data. It focuses on overcoming incomplete datasets due to sensor errors by employing various tailored imputation techniques. This ensures the integrity and relevance of data, catering to the unique characteristics of different features, such as discrepancies between power consumption and temperature curves.

TimeWeaver provides insightful graphics and analyses, enabling effective tool selection for specific data challenges, making it a valuable asset for data scientists and analysts. Additionally, it is evolving to offer a customizable Preprocessor model, facilitating the integration of optimal imputation methods into existing data processing pipelines for automated and enhanced data preparation.

Disclaimer

The currently implementation methods are based on the provided functions by numpy / scipy. The package logo was generated by ChatGPT 4.0 on 09.03.2024. The project is still in the early stages of development and thereby not yet suitable for production environments, it's meant solely for testing and experimentation.

Quickstart

The following example uses the Beijing PM25 Data Set to show the functionalities of the library.

from timeweaver.timeweaver import TimeWeaver
from timeweaver.datasets import DataSets

dataframe = DataSets.PRSA()
interpolator = TimeWeaver(dataframe[0:1000], tracking_column="No")
interpolator.evaluate()
print(interpolator.get_best(optimized_selection=True))

[('year', 'akima'), ('month', 'akima'), ('day', 'akima'), ('hour', 'akima'), ('pm2.5', 'akima'), ('DEWP', 'from_derivatives'), ('TEMP', 'akima'), ('PRES', 'akima'), ('Iws', 'akima'), ('Is', 'from_derivatives'), ('Ir', 'akima')]

PreProcessor = interpolator.build_PreProcessor()
PreProcessor.transform(dataframe)

Structure

TimeWeaver Structure

To Do List

  • Implement the PreProcessor object as a return
  • If the initial design doesnt find a interpolation method it breaks

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

TimeWeaver-0.1.7.31.tar.gz (515.0 kB view details)

Uploaded Source

File details

Details for the file TimeWeaver-0.1.7.31.tar.gz.

File metadata

  • Download URL: TimeWeaver-0.1.7.31.tar.gz
  • Upload date:
  • Size: 515.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for TimeWeaver-0.1.7.31.tar.gz
Algorithm Hash digest
SHA256 060a70efda0beaf1fbb0daa117d63b7c428f559b5746e0b71141aeb132290335
MD5 63e6b83265e092e274622b1d2c17cdbc
BLAKE2b-256 a18397853b160287b4498ae73762a02f4c33b88d06f4c9a921fd41487e9261f1

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