用python写输出随机森林的特征重要性图像,只显示最重要的10个特征
时间: 2024-04-29 09:23:08 浏览: 75
特征提取程序.zip_python实现_特征提取python_特征重要性_随机森林Python_随机森林特征选择
5星 · 资源好评率100%
可以使用sklearn中的RandomForestRegressor或RandomForestClassifier来训练随机森林模型,并利用feature_importances_属性来计算特征重要性。以下是一个python代码示例:
```
from sklearn.ensemble import RandomForestRegressor
import matplotlib.pyplot as plt
# 导入数据,X为特征,y为标签
X, y = ...
# 训练随机森林模型
rf = RandomForestRegressor(n_estimators=100, random_state=42)
rf.fit(X, y)
# 获取特征重要性
importances = rf.feature_importances_
# 获取特征名称
feature_names = ...
# 将特征重要性降序排列
indices = np.argsort(importances)[::-1]
# 只显示前10个特征
indices = indices[:10]
# 画图
plt.bar(range(10), importances[indices])
plt.xticks(range(10), feature_names[indices], rotation=90)
plt.show()
```
注意:在上述代码中,需要自己准备数据,并且将X和feature_names对应起来。
阅读全文