1、作业题目
原生python实现knn算法
2、算法设计

3、源代码
import random
import time
import math
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
class MyKNN:
def __init__(self, n_neighbors):
'''指定近邻个数'''
self.n_neighbors = n_neighbors # 近邻数
# self.x_new = [] # 预测数据集
def predict(self, x_new):
'''预测模型'''
targetList = [] # 存储预测数据的预测所属类
for i in range(len(x_new)):
tp = x_new[i]
#print(tp)
distList = self.get_deftDist(tp) # 获取此时测试数据x_new[i]与预先序列的距离
for j in range(len(self.x_train)):
Lmax = max(distList)
L = 0
for k in range(len(self.x_train[j])):
L += (tp[k]-self.x_train[j][k])**2 # 遍历训练集,计算当前x_new[i]训练集与x_train[j]的距离
L =

这篇博客主要介绍了作者使用原生Python实现KNN算法的过程,包括算法设计、源代码展示、运行结果和调试分析。通过KNN算法的学习,作者对机器学习有了初步的认识,理解了其基于数据构建模型并进行预测的思想。
最低0.47元/天 解锁文章
882

被折叠的 条评论
为什么被折叠?



