2012-01-17 17 views
1

3つのフィールドを持つ 'データ'という構造化配列(1x1)があります。各フィールドにはデータのベクトルが含まれています。値の検索と置換

0.2より大きい値と、それに隣接する値をNaNと置き換えるために、次のコードを使用します。しかし、0.2で変更される値がNaNに変更されずに比較された値に変更されるように、このコードを変更することは可能ですか?私が正しくあなたを理解していれば

for i=1:3; 
    I{i} = find(diff(Data.(Names{i}))>0.2); 
    Data.(Names{i})(I{i}+1)=NaN; 
end 

おかげ

答えて

1

あなたが前の要素を持つ要素を比較しています。差が0.2より大きい場合は、この要素を前の要素に置き換えます。

あなたはほとんどそこにいます。前の要素の値を次のように割り当てます。

Data.(Names{i})(I{i}+1)=Data.(Names{i})(I{i})