lsst.pipe.tasks  20.0.0-39-gbdec61e6+2040cb0b94
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lsst.pipe.tasks.functors.CompositeFunctor Class Reference
Inheritance diagram for lsst.pipe.tasks.functors.CompositeFunctor:
lsst.pipe.tasks.functors.Functor

Public Member Functions

def __init__ (self, funcs, **kwargs)
 
def filt (self)
 
def filt (self, filt)
 
def update (self, new)
 
def columns (self)
 
def multilevelColumns (self, parq)
 
def __call__ (self, parq, **kwargs)
 
def renameCol (cls, col, renameRules)
 
def from_file (cls, filename, **kwargs)
 
def from_yaml (cls, translationDefinition, **kwargs)
 
def noDup (self)
 
def __call__ (self, parq, dropna=False)
 
def difference (self, parq1, parq2, **kwargs)
 
def fail (self, df)
 
def name (self)
 
def shortname (self)
 

Public Attributes

 funcDict
 
 filt
 

Static Public Attributes

 dataset
 

Detailed Description

Perform multiple calculations at once on a catalog

The role of a `CompositeFunctor` is to group together computations from
multiple functors.  Instead of returning `pandas.Series` a
`CompositeFunctor` returns a `pandas.Dataframe`, with the column names
being the keys of `funcDict`.

The `columns` attribute of a `CompositeFunctor` is the union of all columns
in all the component functors.

A `CompositeFunctor` does not use a `_func` method itself; rather,
when a `CompositeFunctor` is called, all its columns are loaded
at once, and the resulting dataframe is passed to the `_func` method of each component
functor.  This has the advantage of only doing I/O (reading from parquet file) once,
and works because each individual `_func` method of each component functor does not
care if there are *extra* columns in the dataframe being passed; only that it must contain
*at least* the `columns` it expects.

An important and useful class method is `from_yaml`, which takes as argument the path to a YAML
file specifying a collection of functors.

Parameters
----------
funcs : `dict` or `list`
    Dictionary or list of functors.  If a list, then it will be converted
    into a dictonary according to the `.shortname` attribute of each functor.

Definition at line 214 of file functors.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.pipe.tasks.functors.CompositeFunctor.__init__ (   self,
  funcs,
**  kwargs 
)

Definition at line 245 of file functors.py.

Member Function Documentation

◆ __call__() [1/2]

def lsst.pipe.tasks.functors.CompositeFunctor.__call__ (   self,
  parq,
**  kwargs 
)

Definition at line 287 of file functors.py.

◆ __call__() [2/2]

def lsst.pipe.tasks.functors.Functor.__call__ (   self,
  parq,
  dropna = False 
)
inherited

Definition at line 182 of file functors.py.

◆ columns()

def lsst.pipe.tasks.functors.CompositeFunctor.columns (   self)
Columns required to perform calculation

Reimplemented from lsst.pipe.tasks.functors.Functor.

Definition at line 280 of file functors.py.

◆ difference()

def lsst.pipe.tasks.functors.Functor.difference (   self,
  parq1,
  parq2,
**  kwargs 
)
inherited
Computes difference between functor called on two different ParquetTable objects

Definition at line 193 of file functors.py.

◆ fail()

def lsst.pipe.tasks.functors.Functor.fail (   self,
  df 
)
inherited

Definition at line 198 of file functors.py.

◆ filt() [1/2]

def lsst.pipe.tasks.functors.CompositeFunctor.filt (   self)

Definition at line 257 of file functors.py.

◆ filt() [2/2]

def lsst.pipe.tasks.functors.CompositeFunctor.filt (   self,
  filt 
)

Definition at line 261 of file functors.py.

◆ from_file()

def lsst.pipe.tasks.functors.CompositeFunctor.from_file (   cls,
  filename,
**  kwargs 
)

Definition at line 324 of file functors.py.

◆ from_yaml()

def lsst.pipe.tasks.functors.CompositeFunctor.from_yaml (   cls,
  translationDefinition,
**  kwargs 
)

Definition at line 331 of file functors.py.

◆ multilevelColumns()

def lsst.pipe.tasks.functors.CompositeFunctor.multilevelColumns (   self,
  parq 
)

Reimplemented from lsst.pipe.tasks.functors.Functor.

Definition at line 283 of file functors.py.

◆ name()

def lsst.pipe.tasks.functors.Functor.name (   self)
inherited

◆ noDup()

def lsst.pipe.tasks.functors.Functor.noDup (   self)
inherited

Definition at line 120 of file functors.py.

◆ renameCol()

def lsst.pipe.tasks.functors.CompositeFunctor.renameCol (   cls,
  col,
  renameRules 
)

Definition at line 315 of file functors.py.

◆ shortname()

def lsst.pipe.tasks.functors.Functor.shortname (   self)
inherited
Short name of functor (suitable for column name/dict key)

Reimplemented in lsst.pipe.tasks.functors.Color, and lsst.pipe.tasks.functors.MagDiff.

Definition at line 208 of file functors.py.

◆ update()

def lsst.pipe.tasks.functors.CompositeFunctor.update (   self,
  new 
)

Definition at line 267 of file functors.py.

Member Data Documentation

◆ dataset

lsst.pipe.tasks.functors.CompositeFunctor.dataset
static

Definition at line 243 of file functors.py.

◆ filt

lsst.pipe.tasks.functors.CompositeFunctor.filt

Definition at line 277 of file functors.py.

◆ funcDict

lsst.pipe.tasks.functors.CompositeFunctor.funcDict

Definition at line 248 of file functors.py.


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