#导入数据集生成器
from sklearn.datasets import make_blobs
#生成样本数为200,分类为2的数据集
data = make_blobs(n_samples = 200,centers = 2,random_state = 8)
print(data)
X,y = data #分离自变量与因变量
#数据可视化
import matplotlib.pyplot as plt
%matplotlib inline
plt.scatter(X[:,0],X[:,1],c = y,cmap=plt.cm.spring,edgecolors = 'k')
#导入KNN分类器
from sklearn.neighbors import KNeighborsClassifier
、
import numpy as np
#KNN分类器实例化
clf = KNeighborsClassifier()
#模型训练
clf.fit(X,y)
#训练结果可视化
x_min,x_max = X[:,0].min() -1,X[:,0].max()+1
y_min,y_max = X[:,1].min() -1,X[:,1].max()+1
xx,yy = np.meshgrid(np.arange(x_min,x_max,.02),
np.arange(y_min,y_max,.02))
Z = clf.predict(np.c_[xx.ravel(),yy.ravel()])
Z = Z.reshape(xx.shape)
plt.pcolormesh(xx,yy,Z,cmap=plt.cm.Pastel1)
plt.scatter(X[:,0],X[:,1],c=y,cmap=plt.cm.spring,edgecolor='k')
plt.xlim(xx.min(),xx.max())
plt.ylim(yy.min(),yy.max())
plt.title("Classifier:KNN")
#对新数据点进行可视化
plt.scatter(6.75,4.82,marker='*',c='blue',s=2000)