特征选择就是单纯地从提取到的所有特征中选择部分特征作为训练集特征,特征在选择前和选择后可以改变值、也不改变值,但是选择后的特征维数肯 定比选择前小,毕竟我们只选择了其中的一部分特征。
流程
- 初始化VarianceThreshlod,指定阀值方差
- 调用fit_transform
Variance Threshold 语法
- VarianceThreshold(threshold = 0.0)
删除所有低方差特征 - Variance.fit_transform(X,y)
X:numpy array格式的数据[n_samples,n_features]
返回值:训练集差异低于threshold的特征将被删除。
默认值是保留所有非零方差特征,即删除所有样本中具有相同值的特征。
小案例
from sklearn.feature_selection import VarianceThreshold
def var():
'''特征选择-删除低方差的特征'''
va = VarianceThreshold(threshold=1.0)
data = va.fit_transform([[0, 2, 0, 3],
[0, 1, 4, 3],
[0, 1, 1, 3]])
print(data)
return None
var()
输出:
[[0]
[4]
[1]]