我有一个大小为10000 x 1的列向量(不均匀间隔),范围为1到7.我想设置新的最小值和最大值(min = 32,max = 72)并推断出vales in之前的值(1到7)之间现在在新范围内(32到72)。
答案 0 :(得分:1)
这是你想要的吗?
old = [1 4 7];
new = (old - 1)/(7-1)*(72-32) + 32
结果:
new =
32 52 72
似乎太容易了,我错过了什么吗?把4变成20/3以上的例子让我觉得我就是这样!
答案 1 :(得分: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;