how to count number of values exceeding given threshold in moving window

1 view (last 30 days)
I want to calculate # of values exceeding specified threshold (m) with a moving window of length w (so that we omit the 1st sample and add another sample) I have a data of 1500 samples. In matlab r2013 thanx

Accepted Answer

Guillaume
Guillaume on 18 Feb 2018
If I understood correctly:
v = [1 2 3 4 5 6 5 4 3 2 1 2 3 4 5 6]; %demo data
threshold = 4;
windowsize = 5;
abovethreshold = v > threshold;
inwindowabovethreshold = conv(abovethreshold, ones(1, windowsize), 'same')
If you were using R2016a or later, you could use movsum instead of the awkward convolution.
  5 Comments
Image Analyst
Image Analyst on 18 Feb 2018
Same answer I would have given. If it solves your problem, you can "Accept this answer", and vote for it, to thank Guillaume by giving him reputation points.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!