如何提取并展示随机森林模型中重要性排名前10的特征
随机森林特征重要性取前10的代码调整方案
你只需要在原有生成特征重要性Series的逻辑后,追加降序排序和取前10项的链式调用即可,调整后完整代码如下:
model1 = RandomForestClassifier() model1.fit(X_train, y_train) # 按重要性从高到低排序后取前10个特征 feature_top10 = pd.Series(model1.feature_importances_, index=X_train.columns) \ .sort_values(ascending=False) \ .head(10) # 输出查看结果 print(feature_top10)
补充说明:
sort_values(ascending=False)作用是将特征重要性按从高到低排序,该方法默认是升序排序,必须指定ascending=False参数才能得到重要性从高到低的结果head(10)作用是提取排序后结果的前10行,对应就是重要性最高的10个特征
如果需要将结果转为字典、列表做后续处理,可以直接在链式调用末尾追加to_dict()、to_list()方法即可。
内容的提问来源于stack exchange,提问作者noob_python
相关产品推荐
相关产品推荐

