Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gregory-1.0.4.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

gregory-1.0.4-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

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

Hashes for gregory-1.0.4.tar.gz
Algorithm Hash digest
SHA256 6bea9227684f124a1f8ddafa57e976b3d3526a78b2361bc9607348ccb5a78c75
MD5 dbc1a0640d6e2cb45fcccd92a58e8728
BLAKE2b-256 78032f894c2bb394f1ba5bf7122b10fb1aa1726f1e150efb966b63fb7c0edc19

See more details on using hashes here.

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

Hashes for gregory-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 3184c9325d661370e5b562826df60662c76cf900c626731412c8a7bb8f674ace
MD5 fbb42e46c294af9820aa37e4fe32fadc
BLAKE2b-256 b7374d3a5d216c73a9250ce86134dc59087ff0a32da8d6f4b4538d029908c786

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