方差阈值,返回所选特征的名称

数据挖掘 scikit-学习 特征选择
2022-02-05 11:30:11

我第一次尝试方差阈值方法,我正在按照 sklearn 中的示例进行处理。

>>> 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]])

但是,最后,它只返回所选特征值的数组。如何在此处获取满足方差阈值限制的特征的名称?我只需要所选功能的名称。

1个回答

使用selector.get_support文档)。这将为您提供选择的特征和丢弃的特征的掩码。

>>> selector.get_support()
array([False,  True,  True, False])

以下是获取所选特征索引的方法

>>> [ i for i, f in enumerate(selector.get_support()) if f ]
[1, 2]