删除零方差的变量

问题描述 投票:-1回答:1

谁能帮我写下代码,用python删除数据框中方差为零的变量?

python-3.x machine-learning data-science variance
1个回答
0
投票

去除低方差的特征

X = [[0, 0, 1], [0, 1, 0], [1, 0, 0], [0, 1, 1], [0, 1, 0], [0, 1, 1]]

这里有3个布尔特征,每个特征有6个实例。假设我们希望去掉那些至少有80%的实例是不变的。一些概率计算表明,这些特征的方差需要低于0.8 *(1 - 0.8)。因此,我们可以使用 参考:Scikit链接

from sklearn.feature_selection import VarianceThreshold
sel = VarianceThreshold(threshold=(.8 * (1 - .8)))    
sel.fit_transform(X)

产出将是:

      array([[0, 1],
             [1, 0],
             [0, 0],
             [1, 1],
             [1, 0],
             [1, 1]])
© www.soinside.com 2019 - 2024. All rights reserved.