LSST Applications g0265f82a02+093ff98f47,g02d81e74bb+3975d4ac1c,g2079a07aa2+14824f138e,g2bbee38e9b+093ff98f47,g337abbeb29+093ff98f47,g3ddfee87b4+626790451e,g3e7165581c+1687b54203,g487adcacf7+018f045a06,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g568d43a26c+02eca3db7e,g591dd9f2cf+3cba9d5141,g858d7b2824+3975d4ac1c,g8a8a8dda67+a6fc98d2e7,g8cdfe0ae6a+66d966b544,g99cad8db69+948283481e,g9ddcbc5298+d4bad12328,ga1e77700b3+246acaaf9c,ga2e4dd1c03+626790451e,ga8c6da7877+c38891e457,gae46bcf261+093ff98f47,gb0e22166c9+3863383f4c,gba4ed39666+9664299f35,gbb8dafda3b+dce3423368,gbeb006f7da+65b42827f3,gbf5cecdb8a+3975d4ac1c,gc0f3af6251+39f4c7265c,gc120e1dc64+1d31f3ee8b,gc28159a63d+093ff98f47,gcf0d15dbbd+626790451e,gd2a12a3803+bbf96b9899,gdaeeff99f8+a38ce5ea23,ge79ae78c31+093ff98f47,gee10cc3b42+a6fc98d2e7,gf1cff7945b+3975d4ac1c,v24.1.5.rc1
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Protected Attributes | Static Protected Attributes | List of all members
lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction Class Reference
Inheritance diagram for lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction:
lsst.pex.config.configurableActions._configurableAction.ConfigurableAction lsst.pex.config.config.Config lsst.pex.config.config.ConfigMeta lsst.pipe.tasks.dataFrameActions._actions.AddColumn lsst.pipe.tasks.dataFrameActions._actions.MultiColumnAction lsst.pipe.tasks.dataFrameActions._actions.SingleColumnAction lsst.pipe.tasks.dataFrameActions._actions.CoordColumn lsst.pipe.tasks.dataFrameActions._actions.MagColumnDN lsst.pipe.tasks.dataFrameActions._actions.MagColumnNanoJansky lsst.pipe.tasks.dataFrameActions._actions.NanoJansky lsst.pipe.tasks.dataFrameActions._actions.NanoJanskyErr

Public Member Functions

None __init_subclass__ (cls, **kwargs)
 
Iterable[Any] __call__ (self, dataFrame, **kwargs)
 
Iterable[str] columns (self)
 

Static Public Attributes

 cache
 
 cacheArgs
 

Protected Attributes

 _actionCache
 

Static Protected Attributes

Mapping _actionCache [int, Any]
 

Detailed Description

Definition at line 11 of file _baseDataFrameActions.py.

Member Function Documentation

◆ __call__()

Iterable[Any] lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction.__call__ ( self,
dataFrame,
** kwargs )
This method should return the result of an action performed on a
dataframe

Reimplemented from lsst.pex.config.configurableActions._configurableAction.ConfigurableAction.

Reimplemented in lsst.pipe.tasks.dataFrameActions._actions.CoordColumn, lsst.pipe.tasks.dataFrameActions._actions.SingleColumnAction, lsst.pipe.tasks.dataFrameActions._actions.NanoJansky, lsst.pipe.tasks.dataFrameActions._actions.AddColumn, lsst.pipe.tasks.dataFrameActions._actions.NanoJanskyErr, lsst.pipe.tasks.dataFrameActions._actions.MagColumnDN, and lsst.pipe.tasks.dataFrameActions._actions.MagColumnNanoJansky.

Definition at line 47 of file _baseDataFrameActions.py.

47 def __call__(self, dataFrame, **kwargs) -> Iterable[Any]:
48 """This method should return the result of an action performed on a
49 dataframe
50 """
51 raise NotImplementedError("This method should be overloaded in a subclass")
52

◆ __init_subclass__()

None lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction.__init_subclass__ ( cls,
** kwargs )
Run initialization for every subclass.

Specifically registers the subclass with a YAML representer
and YAML constructor (if pyyaml is available)

Reimplemented from lsst.pex.config.config.Config.

Definition at line 21 of file _baseDataFrameActions.py.

21 def __init_subclass__(cls, **kwargs) -> None:
22 cls._actionCache = {}
23
24 def call_wrapper(function):
25 def inner_wrapper(self, dataFrame, **kwargs):
26 dfId = id(dataFrame)
27 extra = []
28 for name in (self.cacheArgs or tuple()):
29 if name not in kwargs:
30 raise ValueError(f"{name} is not part of call signature and cant be used for "
31 "caching")
32 extra.append(kwargs[name])
33 extra.append(dfId)
34 key = tuple(extra)
35 if self.cache and self._frozen:
36 # look up to see if the value is in cache already
37 if result := self._actionCache.get(key):
38 return result
39 result = function(self, dataFrame, **kwargs)
40 if self.cache and self._frozen:
41 self._actionCache[key] = result
42 return result
43 return inner_wrapper
44 cls.__call__ = call_wrapper(cls.__call__)
45 super().__init_subclass__(**kwargs)
46
table::Key< int > id
Definition Detector.cc:162

◆ columns()

Iterable[str] lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction.columns ( self)
This property should return an iterable of columns needed by this action

Reimplemented in lsst.pipe.tasks.dataFrameActions._actions.SingleColumnAction, lsst.pipe.tasks.dataFrameActions._actions.MultiColumnAction, lsst.pipe.tasks.dataFrameActions._actions.NanoJanskyErr, and lsst.pipe.tasks.dataFrameActions._actions.AddColumn.

Definition at line 54 of file _baseDataFrameActions.py.

54 def columns(self) -> Iterable[str]:
55 """This property should return an iterable of columns needed by this action
56 """
57 raise NotImplementedError("This method should be overloaded in a subclass")

Member Data Documentation

◆ _actionCache [1/2]

Mapping lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction._actionCache [int, Any]
staticprotected

Definition at line 12 of file _baseDataFrameActions.py.

◆ _actionCache [2/2]

lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction._actionCache
protected

Definition at line 22 of file _baseDataFrameActions.py.

◆ cache

lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction.cache
static
Initial value:
= Field(doc="Controls if the results of this action should be cached,"
" only works on frozen actions",
dtype=bool, default=False)

Definition at line 14 of file _baseDataFrameActions.py.

◆ cacheArgs

lsst.pipe.tasks.dataFrameActions._baseDataFrameActions.DataFrameAction.cacheArgs
static
Initial value:
= ListField(doc="If cache is True, this is a list of argument keys that will be used to "
"compute the cache key in addition to the DataFrameId",
dtype=str, optional=True)

Definition at line 17 of file _baseDataFrameActions.py.


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