如何使用决策树中的 feature_importances_ 删除所有非零重要特征?
Posted
技术标签:
【中文标题】如何使用决策树中的 feature_importances_ 删除所有非零重要特征?【英文标题】:How to remove all non zero important features using feature_importances_ in Decision Tree? 【发布时间】:2020-09-26 05:25:19 【问题描述】:我正在尝试构建一个新的数据集进行分析,我需要从原始数据集中删除所有非零重要特征。
预处理后我的数据集形状为 (61176, 13047)。
我发现所有特征的特征重要性如下:
clf_features = DecisionTreeClassifier(min_samples_split=2,class_weight = 'balanced')
clf_features.fit(x_trn_tfidf, y_train)
我得到了 numpy 数组中所有特征的特征重要性。
现在我需要删除所有非零的重要特征(例如小于 0.001 的值)并创建一个新数据集。
有人可以建议怎么做吗?
【问题讨论】:
【参考方案1】:试试这个:
x_trn_tfidf[:,clf_features.feature_importance_ >= 0.001]
注意:这将返回重要性值大于或等于0.001的所有特征。
【讨论】:
以上是关于如何使用决策树中的 feature_importances_ 删除所有非零重要特征?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用决策树中的 feature_importances_ 删除所有非零重要特征?
如何解释sklearn决策树树中的children_left属性_