本文使用简单的例子,使用22行代码(刨除注释),快速实现knn。为了更加方便理解,没有使用knn的函数,只是用了简单的矩阵操作和计数操作,希望对初学者有帮助。
先来看看数据的格式:
(下载地址:链接:https://pan.baidu.com/s/1j3JsTJUZtV0sgQEVl0UQJg 提取码:7idx )
每一个动物对应17个特征,包括有没有羽毛、下不下蛋等。其中最后一个特征(第二幅图的最后一列)表示动物的类别。我们的目的是使用前面的16个特征利用knn预测动物的类别。所以没有使用到动物的名字信息。
话不多说,直接上代码,改一下读取数据的路径,可以直接跑通:
#使用属性预测动物的7种类别
import pandas as pd
import numpy as np
from collections import Counter
#读数据,别忘了改路径
ZooData = pd.read_csv('/your_path/zoo.csv')
#将dataframe转换为数组&#