MeasurementNotes

class lsst.verify.MeasurementNotes(metric_name)[source]

Bases: object

Container for annotations (notes) associated with a single lsst.verify.Measurement.

Typically you will use pre-instantiate MeasurementNotes objects through the lsst.verify.Measurement.notes attribute.

Parameters:

metric_name : Name or str

Fully qualified name of the measurement’s metric. The metric’s name is used as a prefix for key names.

Examples

MeasurementNotes implements a dict-like interface. The only difference is that, internally, keys are always prefixed with the name of a metric. This allows measurement annotations to mesh lsst.verify.Job metadata keys (lsst.verify.Job.meta).

Users of MeasurementNotes, typically though Measurement.notes, do not need to use this prefix. Keys are prefixed behind the scenes.

>>> notes = MeasurementNotes('validate_drp')
>>> notes['filter_name'] = 'r'
>>> notes['filter_name']
'r'
>>> notes['validate_drp.filter_name']
'r'
>>> print(notes)
{'validate_drp.filter_name': 'r'}

Methods Summary

items() Iterate over note key-value pairs.
keys() Get key names.
update(data) Update the notes with key-value pairs from a dict-like object.

Methods Documentation

items()[source]

Iterate over note key-value pairs.

Yields:

item : key-value pair

Each items is tuple of:

  • Key name (str).
  • Note value (object).
keys()[source]

Get key names.

Returns:

keys : list of str

List of key names.

update(data)[source]

Update the notes with key-value pairs from a dict-like object.

Parameters:

data : dict-like

dict-like object that has an items method for iteration. The key-value pairs of data are added to the MeasurementNotes instance. If key-value pairs already exist in the MeasurementNotes instance, they are overwritten with values from data.