一、问题的引入
该算法致力于通过特征值来预测一个人是否喜欢购物,分为以下结果:
1、喜欢购物的人
2、不喜欢购物的人
每个样本有以下特征值:
1、年龄
2、性别
3、一天打开购物app的次数
二、程序设计说明:
knn算法是根据k个与新样本距离最近的样本,并通过出现最多次的结果来推测新样本的结果。
在该程序中,通过将三个特征用向量的形式描述出来,有以下样本:
分别对应着以下结果:
然后,我们通过欧几里得计算:
d = sqrt((x2 - x1)^2 + (y2 - y1)^2)
接着,我们进行knn算法,首先计算出所有样本与新样本的距离,并对这些距离进行排序,然后输出最近k个样本中出现次数最多的结果作为预测结果:
我们定义k=3,随便写个样本,预测他的结果:
最后的结果为: