使用knn算法对iris数据集进行分类

程序功能

使用 scikit-learn 库中的鸢尾花数据集(Iris dataset),并基于 KNN(K-Nearest Neighbors,K近邻)算法进行分类,最后评估模型的准确率。

代码

python 复制代码
from sklearn import datasets

# 加载鸢尾花数据集
iris = datasets.load_iris()

# 查看数据集中的特征和目标
print(iris.data[:5])  # 前5个数据点的特征
print(iris.target[:5])  # 前5个数据点的类别标签

# 使用鸢尾花数据集进行KNN分类
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import accuracy_score

# 分割训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.3)

# 使用KNN模型
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train, y_train)

# 预测测试集
y_pred = knn.predict(X_test)

# 输出准确率
print(f"Accuracy: {accuracy_score(y_test, y_pred)}")
相关推荐
YuTaoShao1 小时前
【LeetCode 热题 100】56. 合并区间——排序+遍历
java·算法·leetcode·职场和发展
二进制person5 小时前
Java SE--方法的使用
java·开发语言·算法
麻雀无能为力5 小时前
CAU数据挖掘实验 表分析数据插件
人工智能·数据挖掘·中国农业大学
OneQ6665 小时前
C++讲解---创建日期类
开发语言·c++·算法
时序之心5 小时前
时空数据挖掘五大革新方向详解篇!
人工智能·数据挖掘·论文·时间序列
JoJo_Way5 小时前
LeetCode三数之和-js题解
javascript·算法·leetcode
.30-06Springfield6 小时前
人工智能概念之七:集成学习思想(Bagging、Boosting、Stacking)
人工智能·算法·机器学习·集成学习
凌肖战8 小时前
力扣网C语言编程题:在数组中查找目标值位置之二分查找法
c语言·算法·leetcode
weixin_478689768 小时前
十大排序算法汇总
java·算法·排序算法
luofeiju9 小时前
使用LU分解求解线性方程组
线性代数·算法