import numpy as np
import matplotlib.pylab as pyb
%matplotlib inline
from sklearn.neighbors import KNeighborsClassifier
from sklearn import datasets
X,y = datasets.load_iris(True)
X.shape
(150, 4)
X = X[:,:2]
X.shape
(150, 2)
pyb.scatter(X[:,0],X[:,1],c = y)
<matplotlib.collections.PathCollection at 0x156f7fc22b0>
knn = KNeighborsClassifier(n_neighbors=5)
knn.fit(X,y)
KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',
metric_params=None, n_jobs=1, n_neighbors=5, p=2,
weights='uniform')
X.shape
x1 = np.linspace(4,8,100)
y1 = np.linspace(2,4.5,80)
X1,Y1 = np.meshgrid(x1,y1)
X_test = np.c_[X1.ravel(),Y1.ravel()]
X_test.shape
(8000, 2)
%time y_ = knn.predict(X_test)
Wall time: 11.9 ms
from matplotlib.colors import ListedColormap
lc = ListedColormap(['#FFAAAA','#AAFFAA','#AAAAFF'])
lc2 = ListedColormap(['#FF0000','#00FF00','#0000FF'])
%%time
pyb.scatter(X_test[:,0],X_test[:,1],c = y_,cmap=lc)
pyb.scatter(X[:,0],X[:,1],c = y,cmap = lc2)
Wall time: 39.9 ms
%%time
pyb.contourf(X1,Y1,y_.reshape(80,100),cmap=lc)
pyb.scatter(X[:,0],X[:,1],c = y,cmap = lc2)
Wall time: 34.9 ms