Python framework to manage time series.
Project description
Gregory
Python Framework to Manage Time Series.
Overview
The main goal of this framework is to simplify the collection of temporal data and related operations. It is based on the concepts of TimeSeries, as a collection of records associated with a given day, and Granularity, to indicate a given time interval (e.g. daily, weekly, monthly, etc.).
The object related to a single day (TimeSeriesData) contains two attributes:
- day - the reference date for that record
- series - a dictionary that collects for each information (key) the relative value for that day
On the time series it is possible to carry out numerous operations of different types, as for example:
- add or remove records
- search records by date
- exclude records outside a determined range
- resampling of data
- interpolation of missing data
- union and intersection
- batch splitting and data aggregation
- other
Installation
pip install gregory
Framework Structure
gregory
├── dataclass
│ └── time_series_data.py --> Class used to manage daily data.
│
├── granularity
│ ├── granularity.py --> Set of classes used for managing time intervals of different length.
│ └── granularity_factory.py --> Factory class for creating granularity objects.
│
├── timeseries
│ ├── batches.py --> Set of methods to operate on time series dividing them into batches.
│ ├── expr.py --> Set of operations between time series.
│ ├── processing.py --> Set of methods to elaborate time series.
│ └── time_series.py --> Core class that represents a series of daily records.
│
└── util
├── agenda.py --> Utils related to calendar info and evalutations.
├── bisect.py --> Utils related to binary search.
├── decorators.py --> Useful decorators.
├── dictionaries.py --> Utils related to operations on dictionaries.
└── relativedelta.py --> Class that extends relativedelta with useful properties.
License
MIT license, see LICENSE
file.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file gregory-1.0.4.tar.gz
.
File metadata
- Download URL: gregory-1.0.4.tar.gz
- Upload date:
- Size: 14.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6bea9227684f124a1f8ddafa57e976b3d3526a78b2361bc9607348ccb5a78c75 |
|
MD5 | dbc1a0640d6e2cb45fcccd92a58e8728 |
|
BLAKE2b-256 | 78032f894c2bb394f1ba5bf7122b10fb1aa1726f1e150efb966b63fb7c0edc19 |
File details
Details for the file gregory-1.0.4-py3-none-any.whl
.
File metadata
- Download URL: gregory-1.0.4-py3-none-any.whl
- Upload date:
- Size: 17.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3184c9325d661370e5b562826df60662c76cf900c626731412c8a7bb8f674ace |
|
MD5 | fbb42e46c294af9820aa37e4fe32fadc |
|
BLAKE2b-256 | b7374d3a5d216c73a9250ce86134dc59087ff0a32da8d6f4b4538d029908c786 |