from sklearn.neighbors import KNeighborsClassifier
k=5
#对模型训练
clf = KNeighborsClassifier(n_neighbors=k)
clf.fit(x,y)
#对样本进行预测
x_sample = [[0,2]]
neighbors = clf.kneighbors(x_sample)
neighbors[1]
plt.figure(figsize=(16,10))
plt.scatter(x[:,0],x[:,1], c=y, s=100, cmap=‘cool’)
中心点画一下
plt.scatter(c[:,0],c[:,1], s= 100, marker=“^”, c=‘black’)
#画出待预测的点
plt.scatter(x_sample[0][0],x_sample[0][1],marker=‘*’,s=200,cmap=‘cool’)
把预测点与距离最近的5个样本连成线
for i in neighbors[1][0]:
plt.plot([x[i][0], x_sample[0][0]], [x[i][1],x_sample[0][1]], ‘k–’, linewidth=0.6)
plt.show()
鸢尾花数据集
- Iris 鸢尾花数据集内包含 3 类分别为山鸢尾、虹膜锦葵、变色鸢尾&