Filter löschen
Filter löschen

Estimate the maximum value among three consecutive values in a vector

1 Ansicht (letzte 30 Tage)
Hello, I need to do some calculation on each value for each vector. For example, the vector A may contain hundreds of acceleration values:
A=[0.18, 0.01, -0.15, 0.08, .25, 0.12, ......]
I need to abtain a new vector which contains the max value of each three consecutive values of the vector like this:
B=[max(0.18,0.01,-0.15), max(0.01, -0.15,0.08), max(-0.15,0.08,0.25) ...... end=length signal(A)]
I would appreciate your help
Best

Akzeptierte Antwort

the cyclist
the cyclist am 17 Jul. 2023
A=[0.18, 0.01, -0.15, 0.08, .25, 0.12];
output = movmax(A,3)
output = 1×6
0.1800 0.1800 0.0800 0.2500 0.2500 0.2500
  2 Kommentare
the cyclist
the cyclist am 17 Jul. 2023
Note that @Dyuman Joshi's answer illustrates that the movmax function accepts arguments that will affect how you want to handle the endpoints.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Dyuman Joshi
Dyuman Joshi am 17 Jul. 2023
%Random data for example
x = 1:10;
y = movmax(x,3,'Endpoints','discard')
y = 1×8
3 4 5 6 7 8 9 10

Produkte


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by