Toggle Menu
Prev Up Next

scikit-learn 1.3.2
Other versions

Please cite us if you use the software.

# `sklearn.feature_selection`.SelectFwe

class sklearn.feature_selection.SelectFwe(score_func=<function f_classif>, *, alpha=0.05)

  Filter: Select the p-values corresponding to Family-wise error rate.

  Read more in the User Guide.

  Parameters:
    score_func callable, default=f_classif

      Function taking two arrays X and y, and returning a pair of arrays (scores, pvalues). Default is f_classif (see below “See Also”). The default function only works with classification tasks.

    alpha float, default=5e-2

      The highest uncorrected p-value for features to keep.

  Attributes:
    scores_array-like of shape (n_features,)

      Scores of features.

    pvalues_array-like of shape (n_features,)

      p-values of feature scores.

    n_features_in_int

      Number of features seen during fit.

      New in version 0.24.

    feature_names_in_ndarray of shape (`n_features_in_`,)

      Names of features seen during fit. Defined only when `X` has feature names that are all strings.

      New in version 1.0.

  See also

  `f_classif`

    ANOVA F-value between label/feature for classification tasks.

  `chi2`

    Chi-squared stats of non-negative features for classification tasks.

  `f_regression`

    F-value between label/feature for regression tasks.

  `SelectPercentile`

    Select features based on percentile of the highest scores.

  `SelectKBest`

    Select features based on the k highest scores.

  `SelectFpr`

    Select features based on a false positive rate test.

  `SelectFdr`

    Select features based on an estimated false discovery rate.

  `GenericUnivariateSelect`

    Univariate feature selector with configurable mode.

  Examples

      >>> from sklearn.datasets import load_breast_cancer
      >>> from sklearn.feature_selection import SelectFwe, chi2
      >>> X, y = load_breast_cancer(return_X_y=True)
      >>> X.shape
      (569, 30)
      >>> X_new = SelectFwe(chi2, alpha=0.01).fit_transform(X, y)
      >>> X_new.shape
      (569, 15)

  Methods

  `fit`(X, y) | Run score function on (X, y) and get the appropriate features.
  `fit_transform`(X[, y]) | Fit to data, then transform it.
  `get_feature_names_out`([input_features]) | Mask feature names according to selected features.
  `get_metadata_routing`() | Get metadata routing of this object.
  `get_params`([deep]) | Get parameters for this estimator.
  `get_support`([indices]) | Get a mask, or integer index, of the features selected.
  `inverse_transform`(X) | Reverse the transformation operation.
  `set_output`(*[, transform]) | Set output container.
  `set_params`(**params) | Set the parameters of this estimator.
  `transform`(X) | Reduce X to the selected features.

  fit(X, y)

    Run score function on (X, y) and get the appropriate features.

    Parameters:
      X array-like of shape (n_samples, n_features)

        The training input samples.

      y array-like of shape (n_samples,)

        The target values (class labels in classification, real numbers in regression).

    Returns:
      self object

        Returns the instance itself.

  fit_transform(X, y=None, **fit_params)

    Fit to data, then transform it.

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

    Parameters:
      X array-like of shape (n_samples, n_features)

        Input samples.

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

        Target values (None for unsupervised transformations).

      **fit_params dict

        Additional fit parameters.

    Returns:
      X_new ndarray array of shape (n_samples, n_features_new)

        Transformed array.

  get_feature_names_out(input_features=None)

    Mask feature names according to selected features.

    Parameters:
      input_features array-like of str or None, default=None

        Input features.

        - If `input_features` is `None`, then `feature_names_in_` is used as feature names in. If `feature_names_in_` is not defined, then the following input feature names are generated: `["x0", "x1", ..., "x(n_features_in_ - 1)"]`.

        - If `input_features` is an array-like, then `input_features` must match `feature_names_in_` if `feature_names_in_` is defined.

    Returns:
      feature_names_out ndarray of str objects

        Transformed feature names.

  get_metadata_routing()

    Get metadata routing of this object.

    Please check User Guide on how the routing mechanism works.

    Returns:
      routing MetadataRequest

        A `MetadataRequest` encapsulating routing information.

  get_params(deep=True)

    Get parameters for this estimator.

    Parameters:
      deep bool, default=True

        If True, will return the parameters for this estimator and contained subobjects that are estimators.

    Returns:
      params dict

        Parameter names mapped to their values.

  get_support(indices=False)

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

    Parameters:
      indices bool, default=False

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

    Returns:
      support array

        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)

    Reverse the transformation operation.

    Parameters:
      X array of shape [n_samples, n_selected_features]

        The input samples.

    Returns:
      X_r array 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)

    Set output container.

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

    Parameters:
      transform{“default”, “pandas”}, default=None

        Configure output of `transform` and `fit_transform`.

        - `"default"`: Default output format of a transformer

        - `"pandas"`: DataFrame output

        - `None`: Transform configuration is unchanged

    Returns:
      self estimator instance

        Estimator instance.

  set_params(**params)

    Set the parameters of this estimator.

    The method works on simple estimators as well as on nested objects (such as `Pipeline`). The latter have parameters of the form `<component>__<parameter>` so that it’s possible to update each component of a nested object.

    Parameters:
      **params dict

        Estimator parameters.

    Returns:
      self estimator instance

        Estimator instance.

  transform(X)

    Reduce X to the selected features.

    Parameters:
      X array of shape [n_samples, n_features]

        The input samples.

    Returns:
      X_r array of shape [n_samples, n_selected_features]

        The input samples with only the selected features.