sklearn.feature_selection.VarianceThreshold 方差阈值法(过滤法的一种)

sklearn.feature_selection.VarianceThreshold 方差阈值法,用于特征选择,过滤器法的一种,去掉那些方差没有达到阈值的特征。默认情况下,删除零方差的特征

函数用法:

class sklearn.feature_selection.VarianceThreshold(threshold=0.0)

参数:

thresholdfloat,阈值,训练集方差低于此阈值的要素将被删除。默认设置是使所有要素的方差均非零,即删除所有样本中具有相同值的要素

属性:

variances_:array, shape (n_features,)即是每个特征的方差是多少,返回的是数组

from sklearn.feature_selection import VarianceThreshold      
X = [[0, 2, 0, 3], [0, 1, 4, 3], [0, 1, 1, 3]]
selector = VarianceThreshold()
selector.fit_transform(X)
'''
array([[2, 0],
       [1, 4],
       [1, 1]])
'''
selector.variances_
#array([0.        , 0.22222222, 2.88888889, 0.        ])

方法:

  1. fit(X [,y])适合SelectFromModel元变压器。
  2. fit_transform(X [,y])适合数据,然后对其进行转换。
  3. get_params([deep])获取此估计量的参数。
  4. get_support([index])获取所选特征的掩码或整数索引
  5. inverse_transform(X)反向转换操作
  6. partial_fit(X [,y])仅将SelectFromModel元变压器安装一次。
  7. set_params(**参数)设置此估算器的参数。
  8. transform(X)将X缩小为选定的特征。
原文地址:https://www.cnblogs.com/cgmcoding/p/13589434.html