lsst.pipe.tasks  20.0.0-8-g7eef53f7+4
Public Member Functions | List of all members
lsst.pipe.tasks.postprocess.TransformCatalogBaseTask Class Reference
Inheritance diagram for lsst.pipe.tasks.postprocess.TransformCatalogBaseTask:
lsst.pipe.tasks.postprocess.TransformObjectCatalogTask lsst.pipe.tasks.postprocess.TransformSourceTableTask

Public Member Functions

def outputDataset (self)
 
def inputDataset (self)
 
def ConfigClass (self)
 
def runDataRef (self, dataRef)
 
def run (self, parq, funcs=None, dataId=None)
 
def getFunctors (self)
 
def getAnalysis (self, parq, funcs=None, filt=None)
 
def transform (self, filt, parq, funcs, dataId)
 
def write (self, df, parqRef)
 
def writeMetadata (self, dataRef)
 

Detailed Description

Base class for transforming/standardizing a catalog

by applying functors that convert units and apply calibrations.
The purpose of this task is to perform a set of computations on
an input `ParquetTable` dataset (such as `deepCoadd_obj`) and write the
results to a new dataset (which needs to be declared in an `outputDataset`
attribute).

The calculations to be performed are defined in a YAML file that specifies
a set of functors to be computed, provided as
a `--functorFile` config parameter.  An example of such a YAML file
is the following:

    funcs:
        psfMag:
            functor: Mag
            args:
                - base_PsfFlux
            filt: HSC-G
            dataset: meas
        cmodel_magDiff:
            functor: MagDiff
            args:
                - modelfit_CModel
                - base_PsfFlux
            filt: HSC-G
        gauss_magDiff:
            functor: MagDiff
            args:
                - base_GaussianFlux
                - base_PsfFlux
            filt: HSC-G
        count:
            functor: Column
            args:
                - base_InputCount_value
            filt: HSC-G
        deconvolved_moments:
            functor: DeconvolvedMoments
            filt: HSC-G
            dataset: forced_src
    refFlags:
        - calib_psfUsed
        - merge_measurement_i
        - merge_measurement_r
        - merge_measurement_z
        - merge_measurement_y
        - merge_measurement_g
        - base_PixelFlags_flag_inexact_psfCenter
        - detect_isPrimary

The names for each entry under "func" will become the names of columns in the
output dataset.  All the functors referenced are defined in `lsst.pipe.tasks.functors`.
Positional arguments to be passed to each functor are in the `args` list,
and any additional entries for each column other than "functor" or "args" (e.g., `'filt'`,
`'dataset'`) are treated as keyword arguments to be passed to the functor initialization.

The "refFlags" entry is shortcut for a bunch of `Column` functors with the original column and
taken from the `'ref'` dataset.

The "flags" entry will be expanded out per band.

Note, if `'filter'` is provided as part of the `dataId` when running this task (even though
`deepCoadd_obj` does not use `'filter'`), then this will override the `filt` kwargs
provided in the YAML file, and the calculations will be done in that filter.

This task uses the `lsst.pipe.tasks.postprocess.PostprocessAnalysis` object
to organize and excecute the calculations.

Definition at line 448 of file postprocess.py.

Member Function Documentation

◆ ConfigClass()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.ConfigClass (   self)

Definition at line 532 of file postprocess.py.

◆ getAnalysis()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.getAnalysis (   self,
  parq,
  funcs = None,
  filt = None 
)

Definition at line 574 of file postprocess.py.

◆ getFunctors()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.getFunctors (   self)

Definition at line 569 of file postprocess.py.

◆ inputDataset()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.inputDataset (   self)

Definition at line 528 of file postprocess.py.

◆ outputDataset()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.outputDataset (   self)

Definition at line 524 of file postprocess.py.

◆ run()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.run (   self,
  parq,
  funcs = None,
  dataId = None 
)
Do postprocessing calculations

Takes a `ParquetTable` object and dataId,
returns a dataframe with results of postprocessing calculations.

Parameters
----------
parq : `lsst.pipe.tasks.parquetTable.ParquetTable`
    ParquetTable from which calculations are done.
funcs : `lsst.pipe.tasks.functors.Functors`
    Functors to apply to the table's columns
dataId : dict, optional
    Used to add a `patchId` column to the output dataframe.

Returns
------
    `pandas.DataFrame`

Reimplemented in lsst.pipe.tasks.postprocess.TransformObjectCatalogTask.

Definition at line 542 of file postprocess.py.

◆ runDataRef()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.runDataRef (   self,
  dataRef 
)

Definition at line 535 of file postprocess.py.

◆ transform()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.transform (   self,
  filt,
  parq,
  funcs,
  dataId 
)

Definition at line 581 of file postprocess.py.

◆ write()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.write (   self,
  df,
  parqRef 
)

Definition at line 593 of file postprocess.py.

◆ writeMetadata()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.writeMetadata (   self,
  dataRef 
)
No metadata to write.

Reimplemented in lsst.pipe.tasks.postprocess.TransformSourceTableTask.

Definition at line 596 of file postprocess.py.


The documentation for this class was generated from the following file: