Estimate the maximum value among three consecutive values in a vector

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

 采纳的回答

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 个评论

Note that @Dyuman Joshi's answer illustrates that the movmax function accepts arguments that will affect how you want to handle the endpoints.

请先登录,再进行评论。

更多回答(1 个)

类别

在 帮助中心 和 File Exchange 中查找有关 MATLAB 的更多信息

产品

版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by