Skip to main content

Manage time series data with explicit frequency and unit.

Project description

TimeSeriesX

https://img.shields.io/pypi/v/timeseriesx.svg https://travis-ci.com/carlculator/timeseriesx.svg?branch=develop Documentation Status Updates

The eXtended time series library.

Manage time series data with explicit time zone, frequency and unit.

About

TimeSeriesX is motivated by handling time series data in a convenient way. Almost all the features are actually already provided by pandas. TimeSeriesX extends the pandas time series functionality by the unit functionalities of pint and pint-pandas. Further, TimeSeriesX offers an easy and convenient interface to work with time series without the need to dig deep into these libraries, which nevertheless is still recommended, since they go way beyond time series data.

The main challenges that arise when handling time series data are time zones and frequencies. Since time series data is often obtained by measurements, the values are associated with units. Then these units can be confused easily, since the units are often not modeled in code.

TimeSeriesX forces the user to handle time zones, frequencies and units explicitly, while taking care of validation and convenient formats. It also supports deriving these attributes from raw time series data. It offers a limited set of actions on time series that are translated to pandas or pint functionality under the hood. It was designed to guarantee that every transformation of time series data results in a new valid time series, which would require quite some pandas code if done “manually”.

Features

  • model time series data with explicit frequency, time zone and unit

  • convert time zone or unit

  • resample data to new frequency

  • fill and get gaps

  • join time series

  • perform calculations on time series with python standard operators

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

0.1.13 (2022-07-19)

  • fix a few bugs by avoiding is_compatible_with in convert_unit

  • raise only ValueError instead of DimensionalityError on unit dimensionality mismatch

  • remove pandas installation dependency because of transitive dependency via pint-pandas

  • loosen requirements for pytz and dateutil, no special version requirements known

  • extend __getitem__ functionality by supporting iterables of timestamps or positional indices

  • explicitly support indexing by time zone naive timestamps, which is deprecated by pandas

  • make coerce_unit behave like coerce_freq and coerce_time_zone by passing through None

0.1.12 (2022-03-16)

  • fix equals method

  • update documentation

0.1.11 (2022-03-07)

  • fix resampling method to support nan-values

  • update dependencies

0.1.10 (2022-01-21)

  • fix equals method

  • update dependencies

0.1.9 (2021-11-19)

  • allow aggregation functions to return magnitudes or quantities

  • update dependencies

0.1.8 (2021-09-28)

  • fix time zone bug in gap handling

  • update dependencies

  • add more tests

0.1.7 (2021-09-28)

  • improve gap handling

  • update dependencies

  • improve documentation

  • fix calculations with quantity scalar

0.1.6 (2021-09-13)

  • fix time zone issue with UTC in basic calculations for TimestampSeries as 2nd operand

  • update pint-pandas version dependency

  • use pint’s default unit registry

  • add support of callables as arguments for frequency resampling

  • add more tests

0.1.5 (2021-09-10)

  • fix time zone issue with UTC in basic calculations

  • add round-method for TimestampSeries

  • fix map-function for series with unit

  • add more tests

0.1.4 (2021-09-09)

  • improve test coverage

  • improve TimeSeries equality check

  • support NaN-removal in as_pd_series-method

0.1.3 (2021-09-08)

  • remove manual timezone checks because it is handled by pandas

  • fix skipped tests

  • fix repr() method of TimestampSeries

  • fix basic calculation with units involved

0.1.2 (2021-09-07)

  • fix timezone handling

  • First release on PyPI Index.

0.1.1 (2021-02-16)

  • First release on PyPI Test Index.

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

timeseriesx-0.1.13.tar.gz (25.0 kB view details)

Uploaded Source

Built Distribution

timeseriesx-0.1.13-py2.py3-none-any.whl (16.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file timeseriesx-0.1.13.tar.gz.

File metadata

  • Download URL: timeseriesx-0.1.13.tar.gz
  • Upload date:
  • Size: 25.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for timeseriesx-0.1.13.tar.gz
Algorithm Hash digest
SHA256 a01d4e32460a49c36bae84ad1d8f21b00927995dcecef24d9cc01850872bf735
MD5 a19280fb0852a71a10b6c5833267233d
BLAKE2b-256 17ffe622e6639404e44babaed61f86475746f78b548e469b09fc24e01ecabff2

See more details on using hashes here.

File details

Details for the file timeseriesx-0.1.13-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for timeseriesx-0.1.13-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5464603ba0e501522a77b7b343e11aa5cc44cf3b5651a0eb8461f1e2af38d3be
MD5 9b5a7cc5da8b10294bdbbb9b19361cdd
BLAKE2b-256 50935ad4186c161a65c8ac8682fae48bd548a64fe3d377becb5a043eb2cb068d

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