2012-01-17 159 views
1

我有一個名爲'Data'的結構化數組(1x1),它有3個字段。每個字段包含一個數據向量。查找並替換值

以下代碼用於替換大於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})