movmax - remove duplicated

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?

Antworten (2)

Adam Danz
Adam Danz am 29 Jul. 2019
Bearbeitet: Adam Danz am 30 Jul. 2019

0 Stimmen

y= [2,3,4,5,4,3,2];
m = movmax(y,3);
m([1,diff(m)]==0) = [];
Andrei Bobrov
Andrei Bobrov am 30 Jul. 2019

0 Stimmen

y = [2,3,4,5,4,3,2];
v = movmax(y,3);
out = v(diff([0,v])~=0);

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 29 Jul. 2019

Bearbeitet:

am 30 Jul. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by