Skip to main content

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

Metadata

Release files for TimeWeaver 0.1.7.31

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for TimeWeaver 0.1.7.31
File Size Uploaded
TimeWeaver-0.1.7.31.tar.gz 515.0 kB Details

Release files / TimeWeaver-0.1.7.31.tar.gz

Download URL TimeWeaver-0.1.7.31.tar.gz
Size 515.0 kB
Tags Source
SHA-256 checksum
How to use checksums
060a70efda0beaf1fbb0daa117d63b7c428f559b5746e0b71141aeb132290335
BLAKE2b-256 checksum
How to use checksums
a18397853b160287b4498ae73762a02f4c33b88d06f4c9a921fd41487e9261f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.2

Release history Release notifications | RSS feed

This release

0.1.7.31 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page