Assign moving window average if 50 % of the values in the window are within a threshold
3 views (last 30 days)
Show older comments
Hi,
While doing a moving window average, if the 50 % values in that window are less than a certain threshold, how can one assign NaN to the average over that window.
mvavg = movmean(temp_ms, [left_window right_window],'omitnan',...
'Endpoints', 'discard');
How should I check for the threshold over the window ?
1 Comment
darova
on 17 Apr 2020
What about this?
a = [1 2 3 4 4 0 2 1]
a>3
And the result
a =
1 2 3 4 4 0 2 1
ans =
0 0 0 1 1 0 0 0
Accepted Answer
David Hill
on 17 Apr 2020
threshold=5;%whatever you want your threshold to be
threshold2= ;%window size/2
mvavg = movmean(temp_ms, [left_window right_window],'omitnan',...
'Endpoints', 'discard');
mvsum = movsum(temp_ms<threshold, [left_window right_window],'omitnan',...
'Endpoints', 'discard');
mvavg(mvsum<threshold2)=nan;
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!