首页 > 编程知识 正文

mapminmax函数用法,matlab里面的plot函数

时间:2023-05-06 20:17:38 阅读:18460 作者:4591

一些说明的函数接口:

[Y,PS ]=最大最大值(x ) ]

[Y,PS ]=最大最小(x,FP ) )。

y=最大最小(应用)、x、PS ) )。

x=mapminmax(reverse ),y,PS ) ) ) ) ) ) ) )。

用实例说明,测试数据x1=[1 2 4],x2=[5 2 3];

[y,PS]=mapminmax(x1 ) )

y=

-1.0000-0.33331.0000

ps=

name: 'mapminmax '

xrows: 1

xmax: 4

xmin: 1

xrange:

3

yrows: 1

ymax: 1

ymin: -1

yrange:

2

这里,y表示对进行某个正规化而得到的数据,该正规化后的映射被记录在结构体ps中。 看看这个规范化映射是什么样的。

Algorithm

itisassumedthatxhasonlyfiniterealvalues,and that the

elementsofeachrowarenotallequal。

y=(ymax-ymin ) (*(x-xmin )/(xmax-xmin ) ymin;

[是关于这个算法的问题。 算法的前提是每行的元素不相同。 如果一样怎么办? ]实现方法是,如果一行的要素全部相同,则例如xt=[1

1 )、此时的xmax=xmin=1,此时的变换设为y=

ymin,matlab内部就这样解决了.否则应该除以0,没有意义! ]

也就是说,如果对x1=[1 2 4]采用此地图f:2*(x-xmin )/(xmax-xmin ) (-1 ),则得到y=

[ -1.0000-0.33331.0000]

看看:对于x1是否xmin=1,xmax=4;

y(1)=2*(1-1)/(4-1) )-1 )=-1;

y(2)=2* ) 2

- 1(/)4-1) (-1 )=-1/3=-0.3333;

y(3)=

2*(4-1)/(4-1) (-1 )=1;

看来确实实现了这个映射。

上述algorithm映射函数中,ymin和ymax是参数,可以自己设置。 默认值为- 1,1;

例如:

[y,PS]=mapminmax(x1 );

ps.ymin=0;

[y,PS ]=最大最小(x 1,PS ) )。

y=

00.33331.0000

ps=

name: 'mapminmax '

xrows: 1

xmax: 4

xmin: 1

xrange:

3

yrows: 1

ymax: 1

ymin: 0

yrange:

1

此时的映射函数为:f:1*(x-xmin )/(xmax-xmin )0)。 是不是这样,这次请自己验证一下。 o ) ) _) ) o

如果我对x1=[1 2 4]采用某种归一化方式,现在我对x2=[5 2

3 )如果采用同样的规范化方式(同样的映射),则如下所示为:

[y1,PS]=mapminmax(x1 );

y2=

最大混合(应用、2个、ps ) )。

y2=

1.6667-0.33330.3333

即,x1采用的正规化图为: f :2 * (记录在x-1 )/(4-1)-1 )、(ps中),对于x2也采用该图。

x2=[ 5,2,3 ],用这个映射来计算一下。

y2(1)=2)5-1(/4-1 ) (1)=5/3=1)2/3=1.66667

y2(2)=2(2-1)/)4-1(-1 )=-1/3=-0.3333

y2(3)=2(3-1)/(4-1(-1 )=1/3=0.3333

X=

mapminmax(reverse )、y、PS )的作用是进行逆归一化,将归一化后的数据逆归一化后得到原始数据:

[y1,PS]=mapminmax(x1 );

xtt=

映射最小(反转)、y1、ps ) )。

xtt=

124

此时又得到了原来的x1 (xtt=x1 );

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。