机器学习KNN算法(二)--KNN算法的分割数据集及测试
对鸢尾花数据集进行数据集分割
首先加载鸢尾花数据集(用的是Anaconda的Jupyter Notebook)
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
from sklearn import datasets
iris=datasets.load_iris()
x=iris.data[:,2:] #取所有行的后两列
for i,colors,marker in [(0,"red","o"),(1,"blue","+"),(2,"green","x")]:
plt.scatter(x[y==i,0],x[y==i,1],color=colors,marker=marker)
输出结果为
此时的数据集是150行2列的,我们的目标是取其中的百分之八十做数据集,百分之二十做测试集,然后用那0.2的测试数据去测试,把测试结果与从源数据集中分离出来的测试集 中的数据作比较,来测试算法的准确度,首先先分割数据集
这里用了一个random中的permutation(),他可以生成随机的数字并且打乱,