自学内容网 自学内容网

2024最新分别用sklearn和NumPy设计k-近邻法对鸢尾花数据集进行分类(包含详细注解与可视化结果)

本文章代码实现以下功能:

利用sklearn设计实现k-近邻法。

利用NumPy设计实现k-近邻法。

将设计的k-近邻法对鸢尾花数据集进行分类,通过准确率来验证所设计算法的正确性,并将分类结果可视化。

评估k取不同值时算法的精度,并通过可视化展示。

sklearn实现

# (1)数据导入,分割数据
# 导入iris数据集
from sklearn.datasets import load_iris
 
# 分割数据模块
from sklearn.model_selection import train_test_split
 
# (2)K最近(KNN,K-Nearest Neighbor)分类算法
from sklearn.neighbors import KNeighborsClassifier
 
# 加载iris数据集
data = load_iris()
# 导入数据和标签
data_X = data.data
data_y = data.target
 
# ———————画图,看第一和第三特征的分布——————————————————
import matplotlib.pyplot as plt
print(data.feature_names)
# print(data.data[:, 0])
# print(data.data[:, 2])
feature_1 = data.data[:, 0] # 设置横坐标标签 代表的是花萼长度
feature_3 = data.data[:, 2]  # 设置纵坐标标签 代表的是花瓣宽度
plt.scatter(feature_1, feature_3)  # 看数据分布
plt.show()
 
# _--------------------150个数据的行索引号0-149------------
plt.scatter(feature_1[:50], feature_3[:50], c='red')  # 第一类
plt.scatter(feature_1[50:

原文地址:https://blog.csdn.net/m0_73811793/article/details/142751338

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!