Skip to main content

Utility classes for working with the LSST EFD.

Project description

LSST EFD Client

https://img.shields.io/pypi/v/lsst-efd-client.svg https://img.shields.io/travis/lsst-sqre/lsst-efd-client.svg

Utility classes for working with the LSST EFD.

  • Free software: MIT license

Features

  • The client EfdClient, has several useful functions.

    • get_topics: Return the topics in the EFD.

    • get_fields: Return the fields in a particular topic

    • build_time_range_query: Build an InfluxQL query for a topic and time range

    • select_time_series: Return a DataFrame containing results of a time range query

    • select_packed_time_series: Return a DataFrame with high cadence telemetry expanded into a single DataFrame.

    • select_top_n: Return a DataFrame with the results of just the most recent rows.

    • get_schema: Get metadata for the fields in a particular topic.

  • There are also some utilities for dealing with results of queries

    • merge_packed_time_series: Takes a dataframe with records that have multiple samples per entry and returns a dataframe with one record per sample.

    • rendezvous_dataframes: Extend on dataframe with data from another dataframe using the closest record in time in the past, in the future, or nearest overall.

See example notebooks here.

For more information, see the online docs.

CONTRIBUTING

For information on contributing to this project see this page.

Credits

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

History

0.1.0 (2019-12-23)

  • First release on PyPI.

0.2.0 (2019-01-15)

  • Minimal functionality in place.

  • Docstrings complete.

0.3.0 (2019-01-31)

  • Unit tests added.

0.4.0 (2019-01-31)

  • Very minor doc updates.

  • Accidently pushed minor version when patch was meant.

0.5.0 (2020-05-29)

  • Switch to the segwarides based credentials.

0.6.0 (2021-02-11)

  • Fix bug in listing possible endpoints

  • Add some utility functionality and speed up unpacking packed time series (thank you RHL)

0.6.4 (2021-02-15)

  • Fix a regression that causes an exception when the name of one column is the same as the start of the name of another column

  • Add a test for the regression

0.7.0 (2021-03-24)

  • Add the get_schema method to fetch metadata about topic fields

  • Add a test for the schema parser

0.8.2 (2021-05-25)

  • Deal gracefully with topics that have no description or units (Thanks Angelo!)

  • Add add a parameter to allow a time threshold when selecting top N (Thanks Michael!)

0.8.3 (2021-06-11)

  • Add column specifying if a field in the schema is array-like.

  • Check for both conventions indicating unitless columns when creating astropy units.

0.9.0 (2021-10-05)

  • This changes the convention to using UTC as the internal representation. This mirrors a change in the influxDB to store index timestamps as UTC. There is a switch to convert the index from TAI to UTC, but the default is to assume UTC everywhere.

0.9.1 (2021-10-28)

  • Fix various bugs left over from the UTC conversions. The most important of these is correcting how the index for packed time series is handled. The other is in the implementation fow how we attempt to handle legacy databases with the index still in TAI.

0.10.0 (2021-11-18)

  • Change how ports are handled. This forces the port to be sent with the rest of the auth information and removes the ability to pass an override port.

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

lsst-efd-client-0.10.1.tar.gz (4.8 MB view details)

Uploaded Source

Built Distribution

lsst_efd_client-0.10.1-py2.py3-none-any.whl (12.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file lsst-efd-client-0.10.1.tar.gz.

File metadata

  • Download URL: lsst-efd-client-0.10.1.tar.gz
  • Upload date:
  • Size: 4.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.8

File hashes

Hashes for lsst-efd-client-0.10.1.tar.gz
Algorithm Hash digest
SHA256 28ada36fc888a8e8d047c0aab73bcefde63340903c9e2eccb7a996cb785a188b
MD5 b1ab39e09b399329a2bf8fff82db36e8
BLAKE2b-256 80e9229dafa9291883217d23046ecae4222f83cbcf850317a3cc7a06e6f44704

See more details on using hashes here.

File details

Details for the file lsst_efd_client-0.10.1-py2.py3-none-any.whl.

File metadata

  • Download URL: lsst_efd_client-0.10.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.8

File hashes

Hashes for lsst_efd_client-0.10.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 b518bda49e4db68c7574b81c10e5fb70e6e4561a6f14a157cc661319c4191af9
MD5 10608009db63c27cd5991f786725d20b
BLAKE2b-256 9a42cbbc6b43116f9d0e5808955c221e78d769b48e51c46ad252b073827b1e14

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