Python Forum
How to correct the programming for KNN
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How to correct the programming for KNN
#1



I get the answer but the output pictures are wrong - may I know which part on my programming is wrong






# read in the iris data
from sklearn.datasets import load_iris
iris = load_iris()
# create X (features) and y (response)
X = iris.data
y = iris.target

from sklearn.neighbors import KNeighborsClassifier
k1 = (1, 2, 3, 4, 5, 6, 7, 8, 9)
k2 = (10, 15, 20, 25, 30, 35, 40)
knn = KNeighborsClassifier(n_neighbors=10)
knn.fit(X, y)
y_pred = knn.predict(X)

from sklearn import metrics
metrics.accuracy_score(y,y_pred)
knn = KNeighborsClassifier(n_neighbors=1)
from sklearn.cross_validation import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=0)

# import Matplotlib (scientific plotting library)
import matplotlib.pyplot as plt
import numpy as np
# try K=1 through K=9 and record testing accuracy
k1_range = range(1, 9)
k2_range = range(10, 40)
# create Python dictionary using [] 
scores1 = []
for k1 in k1_range:
         knn = KNeighborsClassifier(n_neighbors=k1, metric='minkowski', p=2)
         knn.fit(X_train, y_train)
         y_pred = knn.predict(X_test)
         scores1.append(metrics.accuracy_score(y_test, y_pred))
         
scores2 = []         
for k2 in k2_range:
         knn = KNeighborsClassifier(n_neighbors=k2, metric='minkowski', p=2)
         knn.fit(X_train, y_train)
         y_pred = knn.predict(X_test)
         scores2.append(metrics.accuracy_score(y_test, y_pred))         

# plot the relationship between K and testing accuracy
# plt.plot(x_axis, y_axis)
plt.subplot(211)         
plt.plot(k1_range, scores1)
plt.yticks(np.arange(0.93, 0.98, 0.03))
plt.xlabel('Number of neighbors')
plt.ylabel('Accuracy')

plt.subplot(212)
plt.plot(k2_range, scores2)
plt.yticks(np.arange(0.91, 0.98, 0.03))
plt.xlabel('Number of neighbors')
plt.ylabel('Accuracy')

plt.tight_layout() 
plt.show()



Please see the attached file -







[Image: JLZov.jpg]








Please help me to correct the pictures as refer to the attached image file




Reply


Messages In This Thread
How to correct the programming for KNN - by vokoyo - Apr-10-2019, 03:29 AM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Verilog HDL Programming to Python Programming? noobcoder 1 3,136 Jul-18-2019, 09:28 PM
Last Post: nilamo
  How to correct the Python programming - Support Vector Machine vokoyo 7 4,674 Apr-06-2019, 10:11 AM
Last Post: scidam

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020