当前位置:   article > 正文

应用python实现k近邻算法(学生活跃表现数据实战)_python使用sklearn库实现k近邻算法

python使用sklearn库实现k近邻算法

使用python语言应用SKlearn工具包实现KNN算法。SKlearn中包含有很多现成的机器学习算法包,可大幅度降低使用者1编程难度与复杂度,节省项目开发时间与人力成本。

如上图所示的案例,进行KNN分类回归模型计算。KNN模型计算中,除K值的确定外,还有一个非常重要的计算,既样本点间的距离计算.距离计算的公式有很多,例如欧式距离,曼哈顿距离,切比雪夫距离,马氏距离等,我们本次应用欧式距离。例如,在二维空间内,欧式距离如式

数据准备完成以后,开始编写python下基于SKlearn组件的KNN实现

  1. import numpy as np
  2. import warnings
  3. from sklearn import neighbors
  4. def createDataSrt():
  5. dateutilSet = np.array(
  6. [[19,30], [30,40], [39,47], [40,52], [47,50], [50,55], [60,60], [62,65], [73,70],
  7. [75,82], [77,85], [90,95], [92,30]])
  8. labels = ['0', '0', '0', '0', '0', '0', '1', '1', '1', '1', '1', '1', '1']
  9. return dataSet, labels
  10. def knnClassifier(dataSet, labels, teatData,k):
  11. knn = neighbors.KNeighborsClassifier(k)
  12. knn.fit(dataSet, labels)
  13. return knn.predict([teatData])
  14. if __name__ == "_main_":
  15. dataSet, labels=createDataSrt()
  16. warnings.filters('ignore')
  17. pred1=knnClassifier(dataSet, labels, [55,65] , 3)
  18. print('k=3时,预测样本分类结果为:',pred1)
  19. pred2=knnClassifier(dataSet, labels, [55,56], 7)
  20. print('k=7时,预测样本分类结果为;',pred2)

 结果为:

  1. k=3时,预测样本分类结果为:['1']
  2. k=7时,预测样本分类结果为:['0']
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/549026
推荐阅读
相关标签
  

闽ICP备14008679号