0

サイズが 10000 x 1 で、範囲が 1 から 7 の列ベクトル (等間隔ではない) があります。新しい最小値と最大値 (最小 = 32、最大 = 72) を設定し、その間の値を推定したいので、以前の値 (1 ~ 7) は新しい範囲 (32 ~ 72) 内になりました。

4

2 に答える 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 に答える