api:
from sklearn.feature_selection import VarianceThreshold
噪声:某些特征对预测结果有负影响 ,还产生误差。
冗余:两特征之间相似度高,数值接近,或成倍数关系。都纳入计算,消耗计算机性能。
假如一列特征C,每个样本的c特征都是趋于相同的值(方差小):这个特征不具有代表性,因为每个样本的这个特征都是接近的值。应该被删除
VarianceThreshold: 就可以,消除 方差过于小的特征。
代码:
from sklearn.feature_selection import VarianceThreshold
def selection():
vt = VarianceThreshold(threshold=0.1)
data = [[1,2,3],
[1,5,9],
[1.01,6,0]]
data = vt.fit_transform(data)
print(data)
selection()
[[2. 3.]
[5. 9.]
[6. 0.]]