本文不讲归一化原理,只介绍实现(事实上看了代码就会懂原理),代码如下:
def Normalize(data):
m = np.mean(data)
mx = max(data)
mn = min(data)
return [(float(i) - m) / (mx - mn) for i in data]
代码只有5行并不复杂,但是需要注意的一点是一定要将计算的均值以及矩阵的最大、最小值存为变量放到循环里,如果直接在循环里计算对应的值会造成归一化特别慢,笔者之前有过深切的酸爽体验….