机器学习笔记(1)

今天按照《机器学习实战》学习 k-邻近算法,输入KNN.classify0([0,0],group,labels,3)的时候总是报如下的错误:

Traceback (most recent call last):

  File "<pyshell#75>", line 1, in <module>

    KNN.classify0([0,0],group,labels,3)

  File "KNN.py", line 16, in classify0

    diffMat = tile(inX, (dataSetSize,1)) - dataSet

ValueError: operands could not be broadcast together with shapes (4,2) (4)

查看 group类型是array([[1.0, 1.1], [1.0, 1, 0], [0, 0], [0, 0.1]], dtype=object),也和书上显示的不太一样。在百度上找了很久也没有发现有解决方法,仔细想想应该还是输入手误造成!所以又仔细检查了一下代码,最终发现是输入的时候不小心把 . 打成了 , 造成的。

     group = array([[1.0,1.1],[1.0,1,0],[0,0],[0,0.1]])

改正后代码正常!



你可能感兴趣的:(机器学习,邻近算法)