如何从稀疏矩阵中过滤非零重要性特征?
How to filter non-zero importance features from sparse matrix?
我有一个数据集,其中大部分列都有文本值。所以我使用 tfidf 和 count 矢量器将这个数据集转换成矢量形式。结果,我得到了一个稀疏矩阵。我应用了决策树算法,得到了预期的结果。现在,我想准备另一个模型,我只使用那些具有非零特征重要性的特征。但是,我无法过滤那些重要性非零的特征。
X_tr
<65548x3101 sparse matrix of type '<class 'numpy.float64'>'
with 7713590 stored elements in Compressed Sparse Row format>
这里,X_tr是我的训练数据集。
X_tr.shape
(65548, 3101)
dtc.feature_importances_.shape
(3101,)
这里,'dtc'是我的决策树分类器模型。
我的问题是,如何获得另一个仅包含特征重要性为非零值的特征的稀疏矩阵?
我认为这应该很简单:
X_tr[:, dtc.feature_importances_ != 0]
我有一个数据集,其中大部分列都有文本值。所以我使用 tfidf 和 count 矢量器将这个数据集转换成矢量形式。结果,我得到了一个稀疏矩阵。我应用了决策树算法,得到了预期的结果。现在,我想准备另一个模型,我只使用那些具有非零特征重要性的特征。但是,我无法过滤那些重要性非零的特征。
X_tr
<65548x3101 sparse matrix of type '<class 'numpy.float64'>'
with 7713590 stored elements in Compressed Sparse Row format>
这里,X_tr是我的训练数据集。
X_tr.shape
(65548, 3101)
dtc.feature_importances_.shape
(3101,)
这里,'dtc'是我的决策树分类器模型。
我的问题是,如何获得另一个仅包含特征重要性为非零值的特征的稀疏矩阵?
我认为这应该很简单:
X_tr[:, dtc.feature_importances_ != 0]