movmax - remove duplicated

1 view (last 30 days)
Jenny Besedin
Jenny Besedin on 29 Jul 2019
Edited: Adam Danz on 30 Jul 2019
Hello,
I am using movmax in order to find local maximum values on a very long vector.
i want to create a vector which will not include the repetitive number of the maximum value.
it means that if my vector is: y= [2,3,4,5,4,3,2]
and I use: movmax(y,3)
the result will be: 3 4 5 5 5 4 3
what I wish to get is that if there is repetitive maximum value it will show it only once:
the result will be: 3 4 5 4 3
how can I do that?

Answers (2)

Adam Danz
Adam Danz on 29 Jul 2019
Edited: Adam Danz on 30 Jul 2019
y= [2,3,4,5,4,3,2];
m = movmax(y,3);
m([1,diff(m)]==0) = [];

Andrei Bobrov
Andrei Bobrov on 30 Jul 2019
y = [2,3,4,5,4,3,2];
v = movmax(y,3);
out = v(diff([0,v])~=0);

Categories

Find more on Statistics and Machine Learning Toolbox in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!