使用决策树对鸢尾花进行分类python

本文介绍了使用Python的决策树进行鸢尾花数据分类的过程,包括数据读取、类别理解、数据可视化以及训练和分类。通过训练集和测试集划分,利用DecisionTreeClassifier构建模型,并探讨了关键参数如criterion、max_depth和min_samples_leaf等对模型的影响。此外,还讨论了评估指标accuracy_score和f1_score在模型性能评估中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

鸢尾花数据集介绍

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4X8jRzcC-1682471513133)(attachment:4DF91FF95586A48821F095FEB824B992.jpg)]

一:读取数据

from sklearn.datasets import load_iris
# 导入数据集Iris
iris = load_iris() #导入数据
iris_feature= iris.data #特征数据
iris_target = iris.target #分类数据
# print(iris.data)  # 输出数据
print(type(iris))
print(type(iris_feature))
print(type(iris_target))  # numpy 数据类型
<class 'sklearn.utils.Bunch'>
<class 'numpy.ndarray'>
<class 'numpy.ndarray'>
# numpy数据查看--索引
print(iris_feature[2])
print(iris_feature[2,1])
[4.7 3.2 1.3 0.2]
3.2

二:鸢尾花类别

target介绍

# print(iris.data)  # 输出数据
print(iris.target) #输出真实标签
print(len(iris.target)) #样本个数
print(iris.data.shape)
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2
 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
 2 2]
150
(150, 4)

三:数据可视化

在这里插入图片描述

1:绘制直方图

import pandas as</
决策树是一种常用的机器学习算法,用于分类和回归任务。在Python中,我们可以使用sklearn库来构建决策树模型,特别是对于鸢尾花数据集(Iris dataset),它是一个经典的分类问题。首先,我们需要对数据进行预处理: ```python from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.preprocessing import StandardScaler import pandas as pd # 加载鸢尾花数据 iris = load_iris() data = pd.DataFrame(data=iris.data, columns=iris.feature_names) target = iris.target # 数据切分(例如80%训练,20%测试) X_train, X_test, y_train, y_test = train_test_split(data, target, test_size=0.2, random_state=42) # 特征缩放(标准化) scaler = StandardScaler() X_train_scaled = scaler.fit_transform(X_train) X_test_scaled = scaler.transform(X_test) # 将数据转化为决策树模型所需的格式(二维数组) X_train_array = X_train_scaled.reshape(-1, len(iris.feature_names)) X_test_array = X_test_scaled.reshape(-1, len(iris.feature_names)) # 现在你可以使用X_train_array和y_train作为输入,构建决策树模型,如: from sklearn.tree import DecisionTreeClassifier clf = DecisionTreeClassifier(random_state=42) clf.fit(X_train_array, y_train) ``` 在这个示例中,我们做了以下几个预处理步骤: 1. 转换数据到pandas DataFrame方便操作。 2. 划分训练集和测试集。 3. 使用StandardScaler对特征进行标准化,这是因为决策树对数值尺度敏感。 4. 转换数据结构以便于输入给决策树模型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值