From 93b48b157d1c9fcdac42a21c11c9243505d6cbfd Mon Sep 17 00:00:00 2001 From: Yuvraj Tomar <137431005+yuv2020@users.noreply.github.com> Date: Fri, 29 Mar 2024 16:40:52 +0530 Subject: [PATCH] Create kn.py --- machine-learning/kn.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 machine-learning/kn.py diff --git a/machine-learning/kn.py b/machine-learning/kn.py new file mode 100644 index 0000000..20770f9 --- /dev/null +++ b/machine-learning/kn.py @@ -0,0 +1,20 @@ +def dist(x1,x2): + return np.sqrt(sum((x1-x2)**2)) + +# Test Time +def knn(X,Y,queryPoint,k=5): + + vals = [] + m = X.shape[0] + + for i in range(m): + d = dist(queryPoint,X[i]) + vals.append((d,Y[i])) + + new_vals = np.unique(vals[:,1],return_counts=True) + + + index = new_vals[1].argmax() + pred = new_vals[0][index] + + return pred