Hi,
x = [1 2 3 4 3 2 3 4 6 8 5 5 6 8.5 9 11 12 ]; I want to keep one vector whereby the next element is greater than the immediate previous element. keep = [[1 2 3 4 6 8 8.5 9 11 12 ]; to discard if the element is smaller than or equal to the immediate previous element. discard = [3 2 3 4 5 5 6] (the bold elements in x).
I am using loop to do that and I didn't get what I want. could help modify my code or advise any alternative way? thanks in advance!
clc; clear; close allx = [1 2 3 4 3 2 3 4 6 8 5 5 6 8.5 9 11 12 ];m = length(x);k=1; n = 1; i =1; j=2;while i < m-1 & j < m if x(j) >= x(i) keep(n) = x(j); n=n+1; i=i+1; j=j+1; elseif x(j) < x(i) discard(k) = x(j); k = k+1; i=i; j=j+1; end end
Best Answer