Scikit-learn中特征选择模块VarianceThreshold的使用方法和示例

Scikit-learn提供了一个VarianceThreshold特征选择模块,可以用来过滤掉低方差的特征。

使用方法

使用VarianceThreshold模块前,需要先定义一个threshold值,用来指定过滤掉低方差的特征。定义好threshold值后,就可以开始使用VarianceThreshold模块了。使用方法如下:

from sklearn.feature_selection import VarianceThreshold

# 定义一个threshold值
threshold = 0.8

# 实例化VarianceThreshold
vt = VarianceThreshold(threshold)

# 使用VarianceThreshold模块对数据进行过滤
X_new = vt.fit_transform(X)

VarianceThreshold模块会自动过滤掉低方差的特征,输出的X_new就是过滤后的结果。

示例

下面我们来看一个示例,使用VarianceThreshold模块过滤掉低方差的特征。

import numpy as np
from sklearn.feature_selection import VarianceThreshold

# 定义一个数据集
X = np.array([[0, 2, 0, 3], [0, 1, 4, 3], [0, 1, 1, 3]])

# 定义一个threshold值
threshold = 0.8

# 实例化VarianceThreshold
vt = VarianceThreshold(threshold)

# 使用VarianceThreshold模块对数据进行过滤
X_new = vt.fit_transform(X)

# 打印结果
print(X_new)

输出结果如下:

[[2 0]
 [1 4]
 [1 1]]

从上面的结果可以看出,VarianceThreshold模块成功的过滤掉了低方差的特征,输出的X_new就是过滤后的结果。

本文链接:http://task.lmcjl.com/news/8498.html

展开阅读全文