how to scale the array type double of range [-1,1] to [0,1] and [0,360] to[0,1]
7 ビュー (過去 30 日間)
古いコメントを表示
i want to scale my values which are in range of [0,360], [-1,1]to [0,1]
0 件のコメント
回答 (5 件)
Jan
2013 年 8 月 16 日
The following scales array x from any range to [0, 1]
scaled = x - min(x);
scaled = scaled / max(scaled);
0 件のコメント
Alireza Ahani
2021 年 2 月 28 日
check out this function. you can specify also the boundaries.
1 件のコメント
Walter Roberson
2021 年 2 月 28 日
Correct.
This function did not exist back when the question was asked, but is a useful function to know now.
In older days, the deceptively named mat2gray() function was the one to call to do the rescaling.
Azzi Abdelmalek
2013 年 8 月 16 日
a=-1:0.1:1
b=a-min(a)
e=max(a)-min(a)
out=b/e
% you can use the same code for all cases
0 件のコメント
Abdullah Caliskan
2017 年 8 月 14 日
編集済み: Walter Roberson
2021 年 2 月 28 日
if input is matrix, you can use this. upper, bottom
xmax =max(input);
xmin =min(input);
A=bsxfun(@minus,input,xmin);
B=bsxfun(@rdivide,A,(xmax-xmin));
cikis=B*(upper-bottom)+bottom;
1 件のコメント
Jan
2017 年 8 月 28 日
This works columnwise. I assume the min and max values should concern the complete matrix.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!