【sklearn练习】鸢尾花

本文介绍了使用Python的sklearn库对鸢尾花数据集进行KNN分类器的训练过程,包括数据加载、划分训练集和测试集、模型构建及预测结果的比较。

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

一、

import numpy as np
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

第二行:导入datasets数据集

第三行:train_test_split 的作用是将数据集随机分配训练集和测试集

第四行:采用的模型是,KNeighborsClassifier,实现 k 最近邻投票的分类器

二、

iris = datasets.load_iris()
iris_X = iris.data
iris_y = iris.target

第一行,获取鸢尾花数据集

第二行,将data存入iris_X

第三行,将标签存入iris_y 

三、

print(iris_X[:2, :])
print(iris_y)

第一行,打印数据的前两行

第二行,打印标签

输出结果为:

[[5.1 3.5 1.4 0.2]
 [4.9 3.  1.4 0.2]]
[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]

四、

X_train, X_test, y_train, y_test = train_test_split(
    iris_X, iris_y, test_size=0.3)
print(y_train)

第一行,函数 train_test_split 将数据集乱序分为训练集和测试集。

第三行,打印y_train查看

输出结果为:

[1 1 2 0 0 2 2 0 0 0 1 0 2 0 2 1 0 1 0 2 2 2 0 1 0 2 2 2 1 0 0 1 0 0 0 0 2
 2 1 0 1 0 0 1 2 2 2 2 2 2 1 2 1 1 1 2 1 1 2 0 2 1 0 2 2 0 1 1 1 2 2 1 1 0
 1 0 1 1 2 2 2 2 1 1 0 0 0 2 1 0 0 1 1 2 0 0 0 2 2 0 2 1 0 0 2]

五、

knn = KNeighborsClassifier()
knn.fit(X_train, y_train)

第一行,类实例化

第二行,完成模型训练

六、

print(knn.predict(X_test))
print(y_test)

对比模型预测的标签和原标签

输出结果为:

[1 2 0 0 0 2 2 0 2 1 1 0 1 2 1 1 0 1 0 1 1 0 0 0 2 1 0 0 1 1 2 2 2 0 2 1 2
 1 2 2 2 1 0 2 1]
[1 2 0 0 0 2 2 0 2 1 1 0 1 2 1 1 0 1 0 1 1 0 0 0 2 1 0 0 1 1 2 2 2 0 1 1 2
 1 2 1 2 1 0 2 1]

knn鸢尾花数据集是一个非常常用的机器学习数据集,可以用于分类算法的训练和测试。这个数据集包含了150个样本,每个样本有4个特征,分别是花萼长度、花萼宽度、花瓣长度和花瓣宽度。这些样本被分为3个类别,分别是setosa、versicolor和virginica。 要下载knn鸢尾花数据集,我们可以使用Python编程语言来进行操作。首先,我们需要安装并导入Scikit-learn库,它提供了许多常用的机器学习数据集以及基本的预处理和建模工具。 下面是一个下载并加载knn鸢尾花数据集的示例代码: ```python from sklearn.datasets import load_iris # 下载knn鸢尾花数据集 data = load_iris() # 打印数据集的描述信息 print(data.DESCR) # 获取特征向量和标签 X = data.data y = data.target # 打印特征向量和标签的形状 print("特征向量形状:", X.shape) print("标签形状:", y.shape) # 打印前5个样本的特征向量和标签 print("前5个样本的特征向量:", X[:5]) print("前5个样本的标签:", y[:5]) ``` 运行以上代码后,就可以成功地下载并加载knn鸢尾花数据集。通过打印数据集的描述信息,我们可以了解更多关于数据集的详细信息,如样本数量、类别数量和特征的具体含义。同时,我们还可以获取样本的特征向量和标签,并根据需要进行进一步的处理和分析。 总之,knn鸢尾花数据集是一个非常适合练习和学习机器学习算法的经典数据集,通过下载和加载这个数据集,我们可以更好地理解和应用knn算法进行分类任务
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值