how to do running mean?

Hi all,
I have a 3d matrix with a dimension of 21*41*273, for which I want to do the running mean over the third dimension (273 days) for every 4 days.
Any help would be appreciated.

 Accepted Answer

Try something like this
M = rand(21, 41, 273);
M_new = movmean(M, [0 3], 3, 'Endpoints', 'discard');
M_new = M_new(:,:,1:4:end);

5 Comments

My apprecited. Solved!
I am glad to be of help!
Hi Sir Ameer, I have a small question here in this line:
M_new = movmean(M, [0 3], 3, 'Endpoints', 'discard');
What does the [0 3] refer to? I've checked it and it seems that it takes the data from 0 to 3. Am I understand it correctly?
also the ,3, in the line is it for 4 elements mean?
Thanks
Yes, It means that it takes data from the current value and the next three values.
Thank you!

Sign in to comment.

More Answers (0)

Categories

Asked:

on 22 Oct 2020

Commented:

on 25 Oct 2020

Community Treasure Hunt

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

Start Hunting!