我有一个大小为 10000 x 1 的列向量(不均匀间隔),范围为 1 到 7。我想设置新的最小值和最大值(最小值 = 32,最大值 = 72)并推断之前的值值(1 到 7)现在在新范围内(32 到 72)。
问问题
338 次
2 回答
1
这是你想要的吗?
old = [1 4 7];
new = (old - 1)/(7-1)*(72-32) + 32
结果:
new =
32 52 72
似乎太容易了,我错过了什么吗?上面把4变成20/3的例子让我觉得我是!
于 2012-12-18T19:36:33.880 回答
1
A = 7*rand(10000,1);
B = (A-1)/6*(72-32)+32;
或一般来说:
minVal = 32;
maxVal = 72;
B = (A-min(A(:)))/(max(A(:))-min(A(:)))*(maxVal-minVal)+minVal;
于 2012-12-18T19:37:37.273 回答