2016-03-19 9 views
0

私は16399から64678の範囲の生データを持っています。私は に与えられた範囲[1- alpha,1 + alpha]のデータを再分類したいと考えています。ここではalphaが与えられています。再スケーリングされたデータは、データのプロパティを維持する必要があります。「非線形でゆっくり変化する」。私はそれを行うためのコードを作った。しかし、範囲は[0.9 1.1](α= 0.1)の範囲にはない。現在の結果の範囲は[0.4 1.5]です。あなたはそれを修正する方法を提供するために私を助けることができますか?すべて特別な範囲[0.9 1.1]でデータをスケールする方法は?

enter image description here ありがとうございました。これは私のコードと通常の最小/最大の正規化についてどのようにdata

load original_data.mat; 
data=double(data); 
X_data=data(:,1); 
Y_data=data(:,2); 
%% Scale in range [0.9 1.1] 
mid_range=(min(data(:))+max(data(:)))/2; 
X_data_scale=X_data./mid_range; 
Y_data_scale=Y_data./mid_range; 
%% Plot 
subplot(221);plot(X_data);title('Original X data');grid on 
subplot(222);plot(X_data_scale);title('Scale X data');grid on 
subplot(223);plot(Y_data);title('Original Y data');grid on 
subplot(224);plot(Y_data_scale);title('Scale Y data');grid on 

答えて

2

です:

in - min(in)  out - min(out) 
----------------- = -------------------- 
max(in) - min(in) max(out) - min(out) 

outについて解くあなたが得る:

% in is x, out is xx 
load data 
x = data(:,1); 
xx = (x - min(x)) * (1.1 - 0.9)/(max(x) - min(x)) + 0.9; 
subplot(121), plot(x) 
subplot(122), plot(xx) 

+0

Amroありがとうございます。そうです。わかった。もう一つ質問してみましょう:上記のプロパティとして生データをどのように作成すればよいですか:非線形でゆっくりと変化します。そうでなければ、それはいいです。私はあなたのansを受け入れた – Jame

+0

私はあなたの質問を理解するか分からないのですか? – Amro

+0

はい、上記の生データ(他のウェブサイトから入手)は、強度不均一性フィールド(INU)またはバイアスフィールドと呼ばれます。これらのフィールドは線形ではありませんが、複雑な形状のゆっくり変化するフィールドです。その定義に基づいて、私は上記のように私自身のデータを作成したいと思います。 – Jame

関連する問題