程序功能
使用 scikit-learn 库中的鸢尾花数据集(Iris dataset),并基于 KNN(K-Nearest Neighbors,K近邻)算法进行分类,最后评估模型的准确率。
代码
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)}")