SelectorMixin (original) (raw)

class sklearn.feature_selection.SelectorMixin[source]#

Transformer mixin that performs feature selection given a support mask

This mixin provides a feature selector implementation with transform andinverse_transform functionality given an implementation of_get_support_mask.

Examples

import numpy as np from sklearn.datasets import load_iris from sklearn.base import BaseEstimator from sklearn.feature_selection import SelectorMixin class FeatureSelector(SelectorMixin, BaseEstimator): ... def fit(self, X, y=None): ... self.n_features_in_ = X.shape[1] ... return self ... def get_support_mask(self): ... mask = np.zeros(self.n_features_in, dtype=bool) ... mask[:2] = True # select the first two features ... return mask X, y = load_iris(return_X_y=True) FeatureSelector().fit_transform(X, y).shape (150, 2)

fit_transform(X, y=None, **fit_params)[source]#

Fit to data, then transform it.

Fits transformer to X and y with optional parameters fit_paramsand returns a transformed version of X.

Parameters:

Xarray-like of shape (n_samples, n_features)

Input samples.

yarray-like of shape (n_samples,) or (n_samples, n_outputs), default=None

Target values (None for unsupervised transformations).

**fit_paramsdict

Additional fit parameters.

Returns:

X_newndarray array of shape (n_samples, n_features_new)

Transformed array.

get_feature_names_out(input_features=None)[source]#

Mask feature names according to selected features.

Parameters:

input_featuresarray-like of str or None, default=None

Input features.

Returns:

feature_names_outndarray of str objects

Transformed feature names.

get_support(indices=False)[source]#

Get a mask, or integer index, of the features selected.

Parameters:

indicesbool, default=False

If True, the return value will be an array of integers, rather than a boolean mask.

Returns:

supportarray

An index that selects the retained features from a feature vector. If indices is False, this is a boolean array of shape [# input features], in which an element is True iff its corresponding feature is selected for retention. If indices is True, this is an integer array of shape [# output features] whose values are indices into the input feature vector.

inverse_transform(X)[source]#

Reverse the transformation operation.

Parameters:

Xarray of shape [n_samples, n_selected_features]

The input samples.

Returns:

X_originalarray of shape [n_samples, n_original_features]

X with columns of zeros inserted where features would have been removed by transform.

set_output(*, transform=None)[source]#

Set output container.

See Introducing the set_output APIfor an example on how to use the API.

Parameters:

transform{“default”, “pandas”, “polars”}, default=None

Configure output of transform and fit_transform.

Added in version 1.4: "polars" option was added.

Returns:

selfestimator instance

Estimator instance.

transform(X)[source]#

Reduce X to the selected features.

Parameters:

Xarray of shape [n_samples, n_features]

The input samples.

Returns:

X_rarray of shape [n_samples, n_selected_features]

The input samples with only the selected features.