Closed
Description
Description
scikit-learn/sklearn/feature_selection/univariate_selection.py line 577:
def _get_support_mask(self):
check_is_fitted(self, 'scores_')
n_features = len(self.pvalues_)
sv = np.sort(self.pvalues_)
# here
selected = sv[sv <= float(self.alpha) / n_features
* np.arange(n_features)]
if selected.size == 0:
return np.zeros_like(self.pvalues_, dtype=bool)
return self.pvalues_ <= selected.max()
Should Be:
selected = sv[sv <= float(self.alpha) / n_features
* (np.arange(n_features) + 1)]
Because np.arange is start from 0, here it should be start from 1