可用于分类、预测等。
import operator;
def classfy(inx,dataset,lable,k):
datasetsize=dataset.shape[0];
diffmat=tile(inx,(datasize-1))-dataset;
sqdiffmat=diffmat**2;
sqdistance=sqdiffmat.sum(axis=1);
distance=sqdistance**0.5;
sortedistance=distance.argsort();
classcount={};
for i in range(k):
vatelabel=labels[sortedistance[i]];
classcount[vatelabel]=classcount.get(vatelabel,0)+1;
sortedcount=sorted(classcount.iteritems(),key=operator(1),reverse=True)
return sortedcount[0][0];