==================================================
几个要说明的函数接口:


1
2
3
4
[Y,PS] = mapminmax(X)
[Y,PS] = mapminmax(X,FP)
Y = mapminmax('apply',X,PS)
X = mapminmax('reverse',Y,PS)

用实例来讲解,测试数据
x1 = [1 2 4], x2 = [5 2 3];
>> [y,ps] = mapminmax(x1)
y =
-1.0000 -0.3333 1.0000
ps =
name: 'mapminmax'
xrows: 1
xmax: 4
xmin: 1
xrange: 3
yrows: 1
ymax: 1
ymin: -1
yrange: 2

其中y是对进行某种规范化后得到的数据,这种规范化的映射记录在结构体ps中.让我们来看一下这个规范化的映射到底是怎样的?
Algorithm
It is assumed that X has only finite real values, and that the elements of each row are not all equal.
* y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin;

* [关于此算法的一个问题.算法的假设是每一行的元素都不想相同,那如果都相同怎么办?实现的办法是,如果有一行的元素都相同比如xt = [1 1 1],此时xmax = xmin = 1,把此时的变换变为y = ymin,Matlab内部就是这么解决的.否则该除以0了,没有意义!]