Effacer les filtres
Effacer les filtres

Estimate the maximum value among three consecutive values in a vector

1 vue (au cours des 30 derniers jours)
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

Réponse acceptée

the cyclist
the cyclist le 17 Juil 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 commentaires
the cyclist
the cyclist le 17 Juil 2023
Note that @Dyuman Joshi's answer illustrates that the movmax function accepts arguments that will affect how you want to handle the endpoints.
Jorge Luis Paredes Estacio
Jorge Luis Paredes Estacio le 17 Juil 2023
Thank you very much. It works

Connectez-vous pour commenter.

Plus de réponses (1)

Dyuman Joshi
Dyuman Joshi le 17 Juil 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

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by