𝑘-Nearest Neighbours (𝑘-NNs) Classifier


404 image


404 image


404 image

small_train_df = cities_df.sample(30, random_state=90)
X_train = small_train_df.drop(columns=["country"])
y_train = small_train_df["country"]
one_city = small_train_df.sample(1, random_state=44)
one_city
longitude latitude country
144 -104.6173 50.4488 Canada


404 image
404 image


from sklearn.neighbors import KNeighborsClassifier

neigh = KNeighborsClassifier(n_neighbors=1)
neigh.fit(X_train, y_train);
neigh.predict(one_city.drop(columns=["country"]))
array(['Canada'], dtype=object)
404 image


neigh = KNeighborsClassifier(n_neighbors=3)
neigh.fit(X_train, y_train);
neigh.predict(one_city.drop(columns=["country"]))
array(['Canada'], dtype=object)
404 image


neigh = KNeighborsClassifier(n_neighbors=9)
neigh.fit(X_train, y_train);
neigh.predict(one_city.drop(columns=["country"]))
array(['USA'], dtype=object)
model = KNeighborsClassifier(n_neighbors=1)
model.fit(X_train, y_train);


model.score(X_train,y_train)
1.0


model.score(X_test,y_test)
0.7142857142857143

Let’s apply what we learned!