1.1 基本概念
1.2 关键词
1.3 公式推导
1.4 算法优点与缺点
1.5 案例分析
1.5.1 sklearn调包案例
运行此项目前确保安装
1.pyhon
2.numpy
3.scipy
import numpy as np
from sklearn import datasets #获取数据
from sklearn.model_selection import train_test_split #引入分离数据函数
from sklearn.neighbors import KNeighborsClassifier #引入K近邻算法
iris = datasets.load_iris() #iris为一种花,载入数据
iris_X = iris.data #记录花的属性
iris_y = iris.target #记录花的种类
# print(iris_X[:2,:]) #打印两个样本花的属性
# print(iris_y)
#将样本按照训练集:测试集 3:7的比例分开 且数据被打乱
X_train,X_test,y_train,y_test=train_test_split(iris_X,iris_y,test_size=0.3)
knn = KNeighborsClassifier() #调用K近邻算法
knn.fit(X_train,y_train) #训练样本
print(knn.predict(X_test)) #把测试机属性放入训练好的模型获得测试集花的种类
print(y_test) #和原种类对比
运行结果
预测结果
[0 0 0 1 2 0 0 0 2 1 2 1 2 1 0 2 0 1 2 2 1 0 1 1 2 1 1 1 0 0 1 1 2 2 2 2 1
0 2 1 1 2 2 0 1]
原样本
[0 0 0 1 2 0 0 0 2 1 2 1 2 1 0 2 0 1 2 2 2 0 1 1 2 1 1 1 0 0 1 1 2 2 2 2 1
0 2 1 1 2 2 0 1]
参考资料: