python数据分类knn_Python3.2 实现基于KNN算法的数据分类

1 前言

这几天在看《机器学习实战》一书,买这本书的最首要原因是它里面采用Python来实现,而我这段时间对Python的好感越来越强烈。拿到手后一看,果然很不错,书中对一些经典机器学习算法的解释与实现 阐述的都很通俗。今天把KNN算法看懂了,在些基础上用Python进行了实现,代码主要还是基于书中的示例,我在看明白后,加上了注释。

2 KNN算法的基本原理

KNN属于监督学习,要求事先准备好已知分类结果的数据集(即样本数据),其基本原理较为简单。对于待分类的数据集,将其各特征值与样本数据对应的特征值进行比较,然后提取出样本集中与待分类数据的特征最相近的k个数据所对应的分类结果标注,最后从中找出出现最多的那个标注作为待分类数据的最终分类结果。

3 一个简单的待解决问题

已有数据:

group=array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]])

labels=['a','a','b','b']

两组待分类数据:

[1.0,0.8]

[0.5,0.5]

求两组待分类数据分别属于哪一类

4 代码

from numpy import *

import operator

#已有数据,以及对应的标签

group=array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]])

labels=['a','a','b','b']

'''

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值