ID3,C4.5,cart树鸢尾花分类python代码,并评判效果
时间: 2024-09-18 14:13:44 浏览: 44
ID3 (Iterative Dichotomiser 3) 和 C4.5 是基于信息增益的决策树算法,用于分类任务。它们都是从数据集中选择最佳特征来划分节点,直到达到预设的终止条件。Python 中可以使用 sklearn 库中的 DecisionTreeClassifier 类来实现 ID3/C4.5 算法,如鸢尾花(Iris)数据集。
这里是一个简单的例子,使用 Python 的 scikit-learn 库进行 ID3 决策树分类鸢尾花:
```python
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
import pandas as pd
# 加载鸢尾花数据集
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)
# 创建并拟合 ID3 决策树模型
id3_model = DecisionTreeClassifier(criterion='gini', max_depth=None, min_samples_split=2)
id3_model.fit(X_train, y_train)
# 预测测试集
predictions = id3_model.predict(X_test)
# 评估效果
from sklearn.metrics import accuracy_score
accuracy = accuracy_score(y_test, predictions)
print(f"ID3决策树在鸢尾花数据集上的准确率为: {accuracy}")
阅读全文