GaleShapleyFeatureSelectionTransform¶
- class GaleShapleyFeatureSelectionTransform(relevance_table: etna.analysis.feature_relevance.relevance.RelevanceTable, top_k: int, features_to_use: Union[List[str], Literal['all']] = 'all', use_rank: bool = False, return_features: bool = False, **relevance_params)[source]¶
Bases:
etna.transforms.feature_selection.base.BaseFeatureSelectionTransform
GaleShapleyFeatureSelectionTransform provides feature filtering with Gale-Shapley matching algo according to relevance table.
Notes
Transform works with any type of features, however most of the models works only with regressors. Therefore, it is recommended to pass the regressors into the feature selection transforms.
Init GaleShapleyFeatureSelectionTransform.
- Parameters
relevance_table (etna.analysis.feature_relevance.relevance.RelevanceTable) – class to build relevance table
top_k (int) – number of features that should be selected from all the given ones
features_to_use (Union[List[str], Literal['all']]) – columns of the dataset to select from if “all” value is given, all columns are used
use_rank (bool) – if True, use rank in relevance table computation
return_features (bool) – indicates whether to return features or not.
- Inherited-members
Methods
fit
(df)Fit Gale-Shapley algo and find a pool of
top_k
features.fit_transform
(df)May be reimplemented.
inverse_transform
(df)Apply inverse transform to the data.
load
(path)Load an object.
save
(path)Save the object.
to_dict
()Collect all information about etna object in dict.
transform
(df)Select top_k features.
- fit(df: pandas.core.frame.DataFrame) etna.transforms.feature_selection.gale_shapley.GaleShapleyFeatureSelectionTransform [source]¶
Fit Gale-Shapley algo and find a pool of
top_k
features.- Parameters
df (pandas.core.frame.DataFrame) – dataframe to fit algo
- Return type
etna.transforms.feature_selection.gale_shapley.GaleShapleyFeatureSelectionTransform