Assign moving window average if 50 % of the values in the window are within a threshold

1 view (last 30 days)
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 ?

Accepted Answer

David Hill
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;

More Answers (0)

Community Treasure Hunt

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

Start Hunting!