def autonorm(dataset):
minnum = dataset.min(0)
maxnum = dataset.max(0)
ranges = maxnum - minnum
normdataset = zeros(shape(dataset)) # 注意此时的zeros( )是一个全零矩阵,所以别忘了加上括号
numberoflines = dataset.shape[0]
normdataset = dataset - tile(minnum,(numberoflines,1))
Normdataset = normdataset / tile(ranges,(numberoflines,1))
return Normdataset, minnum, maxnum
注意事项:(1)归一化公式: = (某值-最小值)/(最大值-最小值)
(2)对于单一数值的归一化可以用(1)式进行,但是对于矩阵的归一化,需要进行扩展
tile( )就是用于重复的函数,其格式是tile(A,b)----表示将A重复b次