The LSST EFD Client

The LSST EFD Client helps you access the LSST Engineering Facility Database (EFD), which is backed by InfluxDB. The client, EfdClient handles authentication and provides convenience methods for accessing data in ready-to-use formats:

get_topics

Get the topics in the EFD.

get_fields

Get the fields in a particular topic.

build_time_range_query

Build an InfluxQL query for a topic and time range.

select_time_series:

Get a DataFrame containing results of a time range query.

select_packed_time_series:

Get a DataFrame with high cadence telemetry expanded into a single DataFrame.

select_top_n

Get a DataFrame with the results of just the most recent rows.

get_schema

Return metadata about fields associated with a topic. This includes the description, units and an astropy.units.Unit where possible. If any of the metadata is missing in the topic definition, it will be None in the returned schema.

This package also provides some useful utility functions for dealing with data returned from the various EfdClient data access methods:

resample

Resample a pandas.DataFrame onto the the sampling of a second pandas.DataFrame

rendezvous_dataframes

Given one pandas.DataFrame, find all entries in another pandas.DataFrame that are closest (default is nearest in the past).

Follow the Getting started guide to start accessing EFD data. Also, check out the demo notebooks for examples.

Using lsst_efd_client

Python API reference

lsst_efd_client Package

Collection of EFD utilities

Functions

resample(df1, df2[, interp_type])

Resample one DataFrame onto another.

rendezvous_dataframes(left, right[, ...])

Extend each record in left with a corresponding record in "right", if one exists.

merge_packed_time_series(packed_dataframe, ...)

Select fields that are time samples and unpack them into a dataframe.

Classes

NotebookAuth([service_endpoint])

Class to help keep authentication credentials secret.

EfdClient(efd_name[, db_name, ...])

Class to handle connections and basic queries

Contributing

lsst_efd_client is developed at https://github.com/lsst-sqre/lsst-efd-client. Please use GitHub issues in the project repository to report problems and contribute.