我有一个名为'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
感谢
答案 0 :(得分:1)
如果我理解正确的话,你要将元素与前一个元素进行比较。如果差值大于0.2,那么用前一个元素替换它?
然后你快到了。分配前面元素的值,如下所示:
Data.(Names{i})(I{i}+1)=Data.(Names{i})(I{i})