CompositeFunctor¶
- class lsst.pipe.tasks.functors.CompositeFunctor(funcs, **kwargs)¶
- Bases: - Functor- Perform multiple calculations at once on a catalog. - The role of a - CompositeFunctoris to group together computations from multiple functors. Instead of returning- Seriesa- CompositeFunctorreturns a- DataFrame, with the column names being the keys of- funcDict.- The - columnsattribute of a- CompositeFunctoris the union of all columns in all the component functors.- A - CompositeFunctordoes not use a- _funcmethod itself; rather, when a- CompositeFunctoris called, all its columns are loaded at once, and the resulting DataFrame is passed to the- _funcmethod of each component functor. This has the advantage of only doing I/O (reading from parquet file) once, and works because each individual- _funcmethod 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- columnsit expects.- An important and useful class method is - from_yaml, which takes as an argument the path to a YAML file specifying a collection of functors.- Parameters:
 - Attributes Summary - Columns required to perform calculation. - Do not explode by band if used on object table. - Short name of functor (suitable for column name/dict key). - Methods Summary - __call__(data, **kwargs)- Apply the functor to the data table. - difference(data1, data2, **kwargs)- Computes difference between functor called on two different DataFrame/Handle objects. - fail(df)- from_file(filename, **kwargs)- from_yaml(translationDefinition, **kwargs)- multilevelColumns(data, **kwargs)- Returns columns needed by functor from multilevel dataset. - renameCol(col, renameRules)- update(new)- Update the functor with new functors. - Attributes Documentation - columns¶
 - dataset = None¶
 - filt¶
 - name = 'CompositeFunctor'¶
 - noDup¶
- Do not explode by band if used on object table. 
 - shortname¶
- Short name of functor (suitable for column name/dict key). 
 - Methods Documentation - __call__(data, **kwargs)¶
- Apply the functor to the data table. - Parameters:
- datavarious
- The data represented as - DeferredDatasetHandle,- InMemoryDatasetHandle, or- DataFrame. The table or a pointer to a table on disk from which columns can be accessed.
 
 
 - difference(data1, data2, **kwargs)¶
- Computes difference between functor called on two different DataFrame/Handle objects. 
 - fail(df)¶
 - classmethod from_file(filename, **kwargs)¶
 - classmethod from_yaml(translationDefinition, **kwargs)¶
 - multilevelColumns(data, **kwargs)¶
- Returns columns needed by functor from multilevel dataset. - To access tables with multilevel column structure, the - DeferredDatasetHandleor- InMemoryDatasetHandleneeds to be passed either a list of tuples or a dictionary.- Parameters:
- datavarious
- The data as either - DeferredDatasetHandle, or- InMemoryDatasetHandle.
- columnIndex (optional): pandas `~pandas.Index` object
- Either passed or read in from - DeferredDatasetHandle.
- `returnTuple`bool
- If true, then return a list of tuples rather than the column dictionary specification. This is set to - Trueby- CompositeFunctorin order to be able to combine columns from the various component functors.
 
 
 - classmethod renameCol(col, renameRules)¶
 - update(new)¶
- Update the functor with new functors.