Assign moving window average if 50 % of the values in the window are within a threshold
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
nlm
am 15 Apr. 2020
Beantwortet: David Hill
am 17 Apr. 2020
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 Kommentar
darova
am 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
Akzeptierte Antwort
David Hill
am 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 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu NaNs finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!