matlab - Removing duplicate sub-elements -


i have vector a1 , want output a2. basically, should identify starting index of numbers, keep first value , replace repeating elements nan.

a1=[-2 -2 -2 -2 nan nan nan -3 -3 -3 -3 nan nan -2 -2 -2 nan -3 -3 nan nan 1 1 1 1 nan nan 4 4 4 nan nan 3 3 3 nan];  a2=[-2 nan nan nan nan nan nan -3 nan nan nan nan nan -2 nan nan nan -3 nan nan nan 1 nan nan nan 4 nan nan nan nan 3 nan nan nan]; 

assuming format you've shown (nan's in between consecutive numbers), following should work.

first identity indices nan's start , end

inds = [1 diff(isnan(a1))] ~= 0; 

now ininitialize a2 , copy on relevant values a1

a2 = nan(size(a1)); a2(inds) = a1(inds); 

Comments

Popular posts from this blog

routing - AngularJS State management ->load multiple states in one page -

python - GRASS parser() error -

Swift game error message -