Hello everyone.
I have a large dataset with for eg. 3500 Hz (i.e 3500 samples every second) for lets say 10 minutes. so in total I have 3500*60*10 = 2100000 samples.
example question: X = 2100000x1 double.
and now I want to perform moving average for 1 minute (i.e 60*3500 = 210000 samples).
I have worked out the solution using conv. code is written below.
Y = conv(X, ones(1,210000)/210000, 'valid');
This does exactly what I want, but it is taking too long to compute (~3-4 minutes).
Are there any other methods which are faster?
Thanks.
2 Comments
Adam (view profile)
Direct link to this comment
https://ww2.mathworks.cn/matlabcentral/answers/478552-moving-average-filter-for-large-dataset#comment_741376
Kumar (view profile)
Direct link to this comment
https://ww2.mathworks.cn/matlabcentral/answers/478552-moving-average-filter-for-large-dataset#comment_741422
Sign in to comment.