过滤法
单变量特征选择通过单变量统计检验选择特征
SelectKBest只保留K个最高分的特征
SelectPercentile只保留用户指定的百分比的最高得分的特征
使用常见的单变量统计检验
分类:
使用chi2卡方
f_classif方差分析
mutual_info_classif互信息
回归:
使用f_regression相关系数
mutual_info_regression互信息
# 方差过滤
from sklearn.feature_selection import VarianceThreshold
from sklearn.datasets import load_digits
digits = load_digits()
X = digits.data
y = digits.target
print(X.shape)
X_var = VarianceThreshold(threshold=0.1).fit_transform(X)
print(X_var.shape)
# 卡方过滤
from sklearn.feature_selection import SelectKBest, chi2
from sklearn.datasets import load_digits
digits = load_digits()
X = digits.data
y