计算决策树模型中每个特征的重要性的代码
时间: 2024-02-27 13:52:59 浏览: 91
在sklearn中,可以通过`feature_importances_`属性来获取决策树模型中每个特征的重要性。具体地,可以按照以下步骤计算特征重要性:
1. 训练决策树模型;
2. 获取训练好的决策树模型的`feature_importances_`属性;
3. 对`feature_importances_`进行归一化,使其所有元素的和为1;
4. 可以通过绘制条形图等方式来展示特征重要性。
下面是一个示例代码,展示了如何计算和展示决策树模型中每个特征的重要性:
```python
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
import matplotlib.pyplot as plt
import numpy as np
# 加载数据
iris = load_iris()
# 训练决策树模型
clf = DecisionTreeClassifier(random_state=0)
clf.fit(iris.data, iris.target)
# 获取特征重要性
importances = clf.feature_importances_
# 归一化特征重要性
importances = importances / np.sum(importances)
# 绘制条形图展示特征重要性
plt.bar(range(iris.data.shape[1]), importances)
plt.xticks(range(iris.data.shape[1]), iris.feature_names, rotation=90)
plt.show()
```
运行上述代码,可以得到一个条形图,其中每个条形代表一个特征的重要性,高度越高表示该特征对于模型的贡献越大。
阅读全文