lsst.pipe.tasks  19.0.0-10-g448f008b+1
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 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 204 of file functors.py.

Constructor & Destructor Documentation

◆ __init__()

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

Definition at line 235 of file functors.py.

Member Function Documentation

◆ __call__()

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

Definition at line 277 of file functors.py.

◆ columns()

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

Definition at line 270 of file functors.py.

◆ fail()

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

Definition at line 188 of file functors.py.

◆ filt() [1/2]

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

Definition at line 247 of file functors.py.

◆ filt() [2/2]

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

Definition at line 251 of file functors.py.

◆ from_file()

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

Definition at line 314 of file functors.py.

◆ from_yaml()

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

Definition at line 321 of file functors.py.

◆ multilevelColumns()

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

Definition at line 273 of file functors.py.

◆ name()

def lsst.pipe.tasks.functors.Functor.name (   self)
inherited
Full name of functor (suitable for figure labels)

Definition at line 192 of file functors.py.

◆ noDup()

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

Definition at line 115 of file functors.py.

◆ renameCol()

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

Definition at line 305 of file functors.py.

◆ shortname()

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

Definition at line 198 of file functors.py.

◆ update()

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

Definition at line 257 of file functors.py.

Member Data Documentation

◆ dataset

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

Definition at line 233 of file functors.py.

◆ filt

lsst.pipe.tasks.functors.CompositeFunctor.filt

Definition at line 267 of file functors.py.

◆ funcDict

lsst.pipe.tasks.functors.CompositeFunctor.funcDict

Definition at line 238 of file functors.py.


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