knn.py 624 B

12345678910111213141516171819202122
  1. import pandas as pd
  2. import seaborn as sns
  3. import matplotlib.pyplot as plt
  4. import numpy as np
  5. from sklearn.preprocessing import StandardScaler
  6. from sklearn.neighbors import KNeighborsClassifier
  7. class Model:
  8. def __init__(self):
  9. scaler = StandardScaler()
  10. def train(self, X_train, Y_train, X_test, Y_test, n_range=40):
  11. error_rate = []
  12. # Might take some time
  13. for i in range(1, n_range):
  14. knn = KNeighborsClassifier(n_neighbors=i)
  15. knn.fit(X_train, Y_train)
  16. pred_i = knn.predict(X_test)
  17. error_rate.append(np.mean(pred_i != Y_test))