python 决策树实现鸢尾花分类 展示树形结构
时间: 2024-11-12 20:15:01 浏览: 35
Python 中可以使用 `sklearn` 库中的 `DecisionTreeClassifier` 类来实现决策树对鸢尾花数据集的分类,并展示其树形结构。鸢尾花数据集通常来自鸢尾花 (Iris) 数据集,它是一个经典的机器学习入门案例。
首先,你需要导入必要的库:
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier, plot_tree
import matplotlib.pyplot as plt
```
接着加载数据并进行预处理:
```python
# 加载鸢尾花数据
iris = load_iris()
X = iris.data
y = iris.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
```
然后创建并训练决策树模型:
```python
# 创建决策树分类器
clf = DecisionTreeClassifier()
# 训练模型
clf.fit(X_train, y_train)
```
最后,我们可以利用 `plot_tree` 函数来绘制决策树的图形:
```python
# 显示决策树结构
plt.figure(figsize=(15, 10))
plot_tree(clf, filled=True, feature_names=iris.feature_names, class_names=iris.target_names)
plt.title('Iris dataset - Decision Tree')
plt.show()
```
这将展示出基于鸢尾花特征构建的决策树模型,每个内部节点表示一个特征测试,分支代表特征值的取值范围,叶节点则代表预测的结果类别。
阅读全文