Time-Stream¶
Time Series Toolkit for Rapid Environmental Analysis and Monitoring: An open-source Python library for handling and analysing timeseries data with a focus on maintaining the integrity of the temporal properties of the data.
A powerful core object for managing time series with integrated metadata and flags.
In-built functionality for handling timeseries resolution, periodicity and alignment.
Robust time-based aggregation methods which also provide rich supplementary data about data completeness.
Define bitwise flag systems, manage flag columns, and run quality checks.
Fill gaps in your timeseries with interpolation and advanced infill strategies, safely and reproducibly.
Keep important metadata about your timeseries along with the data. Either timeseries-level metadata, or metadata of individual columns.
Why Time-Stream?¶
The goal of Time-Stream is to provide a user friendly Python library for processing time series data, particularly in the hydrological and environmental domain. It is built on top of Polars, which handles efficient DataFrame processes, whilst adding on specific functionality to help you manage time properties such as resolution, periodicity, and anchor points.
Explicit time property management: Perform methods on your data without worrying about whether it’s handling your time data correctly.
Domain knowledge: Built by software engineers and data scientists from UKCEH, with years of experience working with hydrological and environmental data.
Building blocks: Modular design for aggregation, flagging, QC, and infilling.
Polars performance: Polars under the hood, vectorized paths where possible.
Community¶
Developed at UKCEH, welcoming community engagement and contributions. Below are some of the top contributors to the project:
Contributing¶
We welcome contributions! See Contributing for setup, coding standards, documentation guidelines, and CI.
License¶
This project is licensed under the GNU General Public License v3.0.