SelectFwe
Select features while controlling the Family-Wise Error Rate (FWE).
SelectFwe applies the Bonferroni correction to the p-values produced by a
univariate scoring function: a feature is retained only if its raw p-value
is at most alpha / n_features. This guarantees that the probability of
making even one false positive among all selected features is bounded by
alpha, providing the strongest multiple-testing guarantee of the three
p-value-based filter selectors (FPR, FDR, FWE).
FWE control is most appropriate when any single false positive is costly, for example in confirmatory studies, safety-critical applications, or settings where downstream analysis of each selected feature is expensive. Because the correction grows more conservative as the number of features increases, it may discard many truly informative features in very high dimensional problems; in such cases FDR control may be preferable.
Key properties:
- Supervised: requires the target array
yat fit time. alphais the family-wise significance level in [0, 1]; typical values are 0.05 or 0.01.- Most conservative of the three p-value-based filters at the same
alpha; tends to retain fewer features than FDR or FPR. - The number of retained features is data-driven and not fixed in advance.
Wraps scikit-learn's SelectFwe.
References
Parameters
- alpha : number, default=
0.05 - The highest uncorrected p-value for features to be kept.
Methods
fit(self, x: 'DashAIDataset', y: Optional[ForwardRef('DashAIDataset')] = None) -> 'FeatureSelectionConverter'
FeatureSelectionConverterFit the selector while remembering the input column types.
Parameters
- x : DashAIDataset
- The input dataset to fit the selector on.
- y : DashAIDataset, optional
- Target values for the supervised selectors. Defaults to None.
Returns
- FeatureSelectionConverter
- The fitted selector instance (self).
get_metadata(cls) -> 'Dict[str, Any]'
BaseConverterGet metadata for the converter, used by the DashAI frontend.
Parameters
- cls : type
- The converter class (injected automatically by Python for classmethods).
Returns
- Dict[str, Any]
- Dictionary containing display name, short description, image preview path, category, icon, color, and whether the converter is supervised.
get_output_type(self, column_name: str = None) -> DashAI.back.types.dashai_data_type.DashAIDataType
FeatureSelectionConverterReturn the original DashAI data type of a retained column.
Parameters
- column_name : str, optional
- The name of the retained column. Defaults to None.
Returns
- DashAIDataType
- The original type of the column. Falls back to
float64when the input type is unknown (feature selectors only operate on numbers).
get_schema(cls) -> dict
ConfigObjectGenerates the component related Json Schema.
Returns
- dict
- Dictionary representing the Json Schema of the component.
transform(self, x: 'DashAIDataset', y: Optional[ForwardRef('DashAIDataset')] = None) -> 'DashAIDataset'
SklearnWrapperTransform the data using the fitted scikit-learn transformer.
Parameters
- x : DashAIDataset
- The input dataset to transform.
- y : DashAIDataset, optional
- Not used. Present for API consistency. Defaults to None.
Returns
- DashAIDataset
- The transformed dataset with updated DashAI column types.
validate_and_transform(self, raw_data: dict) -> dict
ConfigObjectIt takes the data given by the user to initialize the model and returns it with all the objects that the model needs to work.
Parameters
- raw_data : dict
- A dictionary with the data provided by the user to initialize the model.
Returns
- dict
- A validated dictionary with the necessary objects.