这是《机器学习实战》一书中的代码。源代码
传递给
我的问题是:
准备返回矩阵有什么优势吗?(节省内存?)
如果我不准备矩阵,会出错吗?(似乎不会。)
dataSet
的是一个m×3的数组(datingTestSet2.txt
可以在上级目录中找到。)我的问题是:
准备返回矩阵有什么优势吗?(节省内存?)
如果我不准备矩阵,会出错吗?(似乎不会。)
from numpy import *
def autoNorm(dataSet):
minVals = dataSet.min(0)
maxVals = dataSet.max(0)
ranges = maxVals - minVals
normDataSet = zeros(shape(dataSet)) # prepare matrix to return(It's my own comment, not in the source code. )
# Because there is a similar code before it,
# I think it should be the same meaning. Or any means else?
m = dataSet.shape[0]
normDataSet = dataSet - tile(minVals, (m,1))
normDataSet = normDataSet/tile(ranges, (m,1)) #element wise divide
return normDataSet, ranges, minVals
normDataSet
已经被绑定到其他东西了。(像pyflakes
这样的检查工具会标记这行代码。) - Mark DickinsonnormDataSet
分配作为切片分配,这种情况下,“准备矩阵”行可能是有意义的。 - Mark Dickinson