2 kNN-K-Nearest Neighbors algorithm k邻近算法(一)

       给定训练数据样本和标签,对于某测试的一个样本数据,选择距离其最近的k个训练样本,这k个训练样本中所属类别最多的类即为该测试样本的预测标签。简称kNN。通常k是不大于20的整数,这里的距离一般是欧式距离。

2:python代码

2.1 kNN概述

2.1.1:准备:使用python导入数据

 

2.2.1:实施kNN算法

 

代码讲解:

(a)tile函数 tile(inX, i),扩展长度;tile(inX, (i,j)) ;i是扩展个数,j是扩展长度。

 (b) python代码路径,需要导入os文件,os.getcwd()显示当前目录,os.chdir(‘’)改变目录,listdir()显示当前目录的所有文件。此外如果修改了当前.py文件,需要在python shell中重新加载该py文件(reload(kNN.py)),以确保更新的内容可以生效,否则python将继续使用上次加载的kNN模块。如:

2.2 约会网站

2.2.1 准备数据:从文本中解析数据

2.2.2 分析数据:使用Matplotlib创建散点图

 

2.2.3 准备数据:归一化数据

2.2.4 测试算法:

 

2.2.5 使用算法:

 

 

 

 

 

 

posted @ 2015-11-24 16:07  hudongni1  阅读(493)  评论(0编辑  收藏  举报