以下是使用 Python 实现的代码: ```python from sklearn import tree from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split # 加载鸢尾花数据集 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.2, random_state=42) # 创建决策树分类器,使用信息增益作为特征选择标准,限制树最大深度为 3 clf = tree.DecisionTreeClassifier(criterion="entropy", max_depth=3) # 这里 criterion="entropy" 表示使用信息增益 # 训练模型 clf.fit(X_train, y_train) # 预测 y_pred = clf.predict(X_test) # 打印决策树 print("决策树结构:") print(tree.export_text(clf)) ``` 额外需要注意的逻辑点: 1. 数据的预处理,确保数据格式和数值范围符合模型要求。 2. 对模型的评估指标的选择,例如准确率、召回率等,以全面评估模型性能。 3. 调整随机状态(random_state)的值可能会影响训练集和测试集的划分,从而影响结果。 [2024-11-26 21:23:29 | AI写代码神器 | 290点数解答]