机器学习实战—第9章:树回归 程序代码中的小错误

提示:本人代码运行在Python3的环境下

  • 1、程序清单9-1:
    这里写图片描述
    应改为:
list(map(float, curLine))

解释:map()返回结果是一个Iterator,Iterator是惰性序列,因此通过list()函数让它把整个序列都计算出来并返回一个list。

这里写图片描述
应改为:

def binSplitDataSet(dataSet, feature, value):
    mat0 = dataSet[nonzero(dataSet[:, feature] > value)[0], :]
    mat1 = dataSet[nonzero(dataSet[:, feature] <= value)[0], :]
    return mat0, mat1

解释:加[0]表示返回的是矩阵的第一行

  • 2、程序清单9-2:
    这里写图片描述
    此处会报错:TypeError: unhashable type: ‘matrix’
    应改为:
set(dataSet[:, featIndex].flatten().tolist()[0])
或者
set(dataSet[:, featIndex].T.tolist()[0])

猜你喜欢

转载自blog.csdn.net/chenlin41204050/article/details/79981074