from numpy import *import operator def createDataSet():group = array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]])labels = ['A','A','B','B']return group,labelsdef classify0(inX,dataSet,labels,k):dataSetSize = dataSet.shape[0]diffMat = tile(inX,(dataSetSize,1)) - dataSetsqDiffMat = diffMat**2;sqDistances = sqDiffMat.sum(axis=1)distances = sqDistances**0.5sortedDistIndicies = distances.argsort()classCount = {}for i in range(k):voteIlabel = labels[sortedDistIndicies[i]]classCount[voteIlabel] = classCount.get(voteIlabel,0) + 1sortedClassCount = sorted(classCount.iteritems(),key=operator.itemgetter(1),reverse=True)return sortedClassCount[0][0]pass
《机器学习》实施kNN分类算法
最新推荐文章于 2018-12-05 15:25:51 发布