apply_lambda

Classes

LambdaTransform(in_column, transform_func[, ...])

LambdaTransform applies input function for given series.

class LambdaTransform(in_column: str, transform_func: Callable[[pandas.core.frame.DataFrame], pandas.core.frame.DataFrame], inplace: bool = True, out_column: Optional[str] = None, inverse_transform_func: Optional[Callable[[pandas.core.frame.DataFrame], pandas.core.frame.DataFrame]] = None)[source]

LambdaTransform applies input function for given series.

Init LambdaTransform.

Parameters
  • in_column (str) – column to apply transform

  • out_column (Optional[str]) – name of added column. If not given, use self.__repr__()

  • transform_func (Callable[[pandas.core.frame.DataFrame], pandas.core.frame.DataFrame]) – function to transform data

  • inverse_transform_func (Optional[Callable[[pandas.core.frame.DataFrame], pandas.core.frame.DataFrame]]) – inverse function of transform_func

  • inplace (bool) –

    • if True, apply transformation inplace to in_column,

    • if False, add column and apply transformation to out_column

Warning

throws if inplace=True and out_column is initialized, transformation will be applied inplace

Raises

Value error: – if inplace=True and inverse_transform_func is not defined

Parameters
  • in_column (str) –

  • transform_func (Callable[[pandas.core.frame.DataFrame], pandas.core.frame.DataFrame]) –

  • inplace (bool) –

  • out_column (Optional[str]) –

  • inverse_transform_func (Optional[Callable[[pandas.core.frame.DataFrame], pandas.core.frame.DataFrame]]) –

fit(ts: etna.datasets.tsdataset.TSDataset) etna.transforms.math.apply_lambda.LambdaTransform[source]

Fit the transform.

Parameters

ts (etna.datasets.tsdataset.TSDataset) –

Return type

etna.transforms.math.apply_lambda.LambdaTransform

fit_transform(ts: etna.datasets.tsdataset.TSDataset) etna.datasets.tsdataset.TSDataset

Fit and transform TSDataset.

May be reimplemented. But it is not recommended.

Parameters

ts (etna.datasets.tsdataset.TSDataset) – TSDataset to transform.

Returns

Transformed TSDataset.

Return type

etna.datasets.tsdataset.TSDataset

get_regressors_info() List[str][source]

Return the list with regressors created by the transform.

Return type

List[str]

inverse_transform(ts: etna.datasets.tsdataset.TSDataset) etna.datasets.tsdataset.TSDataset

Inverse transform TSDataset.

Apply the _inverse_transform method.

Parameters

ts (etna.datasets.tsdataset.TSDataset) – TSDataset to be inverse transformed.

Returns

TSDataset after applying inverse transformation.

Return type

etna.datasets.tsdataset.TSDataset

classmethod load(path: pathlib.Path) typing_extensions.Self

Load an object.

Warning

This method uses dill module which is not secure. It is possible to construct malicious data which will execute arbitrary code during loading. Never load data that could have come from an untrusted source, or that could have been tampered with.

Parameters

path (pathlib.Path) – Path to load object from.

Returns

Loaded object.

Return type

typing_extensions.Self

params_to_tune() Dict[str, etna.distributions.distributions.BaseDistribution]

Get grid for tuning hyperparameters.

This is default implementation with empty grid.

Returns

Empty grid.

Return type

Dict[str, etna.distributions.distributions.BaseDistribution]

save(path: pathlib.Path)

Save the object.

Parameters

path (pathlib.Path) – Path to save object to.

set_params(**params: dict) etna.core.mixins.TMixin

Return new object instance with modified parameters.

Method also allows to change parameters of nested objects within the current object. For example, it is possible to change parameters of a model in a Pipeline.

Nested parameters are expected to be in a <component_1>.<...>.<parameter> form, where components are separated by a dot.

Parameters
  • **params – Estimator parameters

  • self (etna.core.mixins.TMixin) –

  • params (dict) –

Returns

New instance with changed parameters

Return type

etna.core.mixins.TMixin

Examples

>>> from etna.pipeline import Pipeline
>>> from etna.models import NaiveModel
>>> from etna.transforms import AddConstTransform
>>> model = model=NaiveModel(lag=1)
>>> transforms = [AddConstTransform(in_column="target", value=1)]
>>> pipeline = Pipeline(model, transforms=transforms, horizon=3)
>>> pipeline.set_params(**{"model.lag": 3, "transforms.0.value": 2})
Pipeline(model = NaiveModel(lag = 3, ), transforms = [AddConstTransform(in_column = 'target', value = 2, inplace = True, out_column = None, )], horizon = 3, )
to_dict()

Collect all information about etna object in dict.

transform(ts: etna.datasets.tsdataset.TSDataset) etna.datasets.tsdataset.TSDataset

Transform TSDataset inplace.

Parameters

ts (etna.datasets.tsdataset.TSDataset) – Dataset to transform.

Returns

Transformed TSDataset.

Return type

etna.datasets.tsdataset.TSDataset