min-max归一化矩阵代码
一、总结
一句话总结:
这里是min-max归一化,就【按公式x* =(x-min)/(max-min)来做矩阵运算】就可以了
min-max标准化:x* =(x-min)/(max-min):【新数据加入,需重新计算max和min】
这里矩阵运算你的话主要就是【平铺tile方法】:normDataSet = dataSet - np.tile(minVals, (m, 1))
def autoNorm(dataSet):
#获得数据的最小值
minVals = dataSet.min(0)
maxVals = dataSet.max(0)
#最大值和最小值的范围
ranges = maxVals - minVals
#shape(dataSet)返回dataSet的矩阵行列数
normDataSet = np.zeros(np.shape(dataSet))
#返回dataSet的行数
m = dataSet.shape[0]
#原始值减去最小值
normDataSet = dataSet - np.tile(minVals, (m, 1))
#除以最大和最小值的差,得到归一化数据
normDataSet = normDataSet / np.tile(ranges, (m, 1))
#返回归一化数据结果,数据范围,最小值
return normDataSet, ranges, minVals
二、内容在总结中