premnmx() is obselete. Use MAPMINMAX instead.app
>> x1=[1 2 4]函数
>> [y,ps]=mapminmax(x1);spa
获得:rem
>> ymap
y =apply
-1.0000 -0.3333 1.0000规范化
>> psapm
ps =let
name: 'mapminmax'
xrows: 1
xmax: 4
xmin: 1
xrange: 3
yrows: 1
ymax: 1
ymin: -1
yrange: 2
no_change: 0ps
根据线性映射可得:y=2*(x-xmin)/(xmax-xmin) - 1;
其中,所映射到的区间 ymax和ymin是参数,能够修改。
>> x1=[1 2 4];
>> [y,ps]=mapminmax(x1);
>> ps.ymin=0;
>> [y,ps]=mapminmax(x1,ps);
>> y
y =
0 0.3333 1.0000
>> ps
ps =
name: 'mapminmax'
xrows: 1
xmax: 4
xmin: 1
xrange: 3
yrows: 1
ymax: 1
ymin: 0
yrange: 1
no_change: 0
此时的映射函数变为:y=(x-xmin)/(xmax - xmin);
;
若是我对x1 = [1 2 4]采用了某种规范化的方式, 如今我要对x2 = [5 2 3]采用一样的规范化方式[一样的映射],以下可办到:
>> [y1,ps]=mapminmax(x1)
>> y2=mapminmax('apply',x2,ps)
这里的ps中的参数能够设置。
'reverse'是反归一化的意思。
>> y2
y2 =
1.6667 -0.3333 0.3333
>> y=mapminmax('reverse',y2,ps)
y =
5 2 3
;End