二、knn
def calssify(inx,dataSet,labels,k):
dataSetSize=dataSet.shape[0]
diffMat = np.tile(inx,(dataSetSize,1))-dataSet
print(diffMat.shape)
sqDiffMat = diffMat**2
sqDictance = sqDiffMat.sum(axis=1)
print(sqDictance.shape)
distance = sqDictance ** 0.5
sortedDistanceIndicies = distance.argsort()
classCount = {}
for i in range(k):
voteLabel = labels[sortedDistanceIndicies[i]]
classCount[voteLabel]=classCount.get(voteLabel,0)+1
sortedClassCount = sorted(classCount.items(),key=operator.itemgetter(1),reverse=True)
return sortedClassCount[0][0]
dataSet,labels = createDataset()
testX=np.array([1.2,1])
k=2
outPutLabel = calssify(testX,dataSet,labels,k)
print(outPutLabel)