lsst.pipe.tasks gf10b05e212+10497e73ae
Public Member Functions | Public Attributes | List of all members
lsst.pipe.tasks.postprocess.TransformCatalogBaseTask Class Reference
Inheritance diagram for lsst.pipe.tasks.postprocess.TransformCatalogBaseTask:

Public Member Functions

def outputDataset (self)
 
def inputDataset (self)
 
def ConfigClass (self)
 
def __init__ (self, *args, **kwargs)
 
def runQuantum (self, butlerQC, inputRefs, outputRefs)
 
def run (self, parq, funcs=None, dataId=None, band=None)
 
def getFunctors (self)
 
def getAnalysis (self, parq, funcs=None, band=None)
 
def transform (self, band, parq, funcs, dataId)
 

Public Attributes

 funcs
 

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 "flags" entry is the default shortcut for `Column` functors.
All columns listed under "flags" will be copied to the output table
untransformed. They can be of any datatype.
In the special case of transforming a multi-level oject table with
band and dataset indices (deepCoadd_obj), these will be taked from the
`meas` dataset and exploded out per band.

There are two special shortcuts that only apply when transforming
multi-level Object (deepCoadd_obj) tables:
 -  The "refFlags" entry is shortcut for `Column` functor
    taken from the `'ref'` dataset if transforming an ObjectTable.
 -  The "forcedFlags" entry is shortcut for `Column` functors.
    taken from the ``forced_src`` dataset if transforming an ObjectTable.
    These are expanded out per band.


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

Definition at line 763 of file postprocess.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.__init__ (   self,
args,
**  kwargs 
)

Definition at line 857 of file postprocess.py.

Member Function Documentation

◆ ConfigClass()

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

Definition at line 854 of file postprocess.py.

◆ getAnalysis()

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

Definition at line 907 of file postprocess.py.

◆ getFunctors()

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

Definition at line 904 of file postprocess.py.

◆ inputDataset()

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

Definition at line 850 of file postprocess.py.

◆ outputDataset()

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

Definition at line 846 of file postprocess.py.

◆ run()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.run (   self,
  parq,
  funcs = None,
  dataId = None,
  band = 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.
band : `str`, optional
    Filter band that is being processed.

Returns
------
df : `pandas.DataFrame`

Definition at line 877 of file postprocess.py.

◆ runQuantum()

def lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.runQuantum (   self,
  butlerQC,
  inputRefs,
  outputRefs 
)

Definition at line 867 of file postprocess.py.

◆ transform()

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

Definition at line 913 of file postprocess.py.

Member Data Documentation

◆ funcs

lsst.pipe.tasks.postprocess.TransformCatalogBaseTask.funcs

Definition at line 862 of file postprocess.py.


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