编写一个程序,使用scikit-learn库中的K-近邻算法(KNN)对鸢尾花数据集进行分类。要求程序使用Sklearn自带工具计算并输出模型的准确率。
时间: 2024-11-12 15:37:23 浏览: 5
knn算法实现鸢尾花分类Markdone
为了使用sklearn库中的K-近邻算法(KNN)对鸢尾花数据集进行分类,并计算并输出模型的准确率,你可以按照以下步骤编写Python程序:
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import accuracy_score
# 1. 加载鸢尾花数据集
iris = load_iris()
X = iris.data
y = iris.target
# 2. 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 3. 初始化KNN分类器
knn = KNeighborsClassifier(n_neighbors=3) # 使用默认的3个邻居
# 4. 拟合训练集数据
knn.fit(X_train, y_train)
# 5. 预测测试集类别
y_pred = knn.predict(X_test)
# 6. 计算准确率
accuracy = accuracy_score(y_test, y_pred)
# 输出模型的准确率
print(f"KNN分类器的准确率为:{accuracy * 100}%")
#
阅读全文