Info

This question is closed. Reopen it to edit or answer.

I'm given a data set of over 7500 points (generated by an ECG) and I need to find all of the relative max and mins.

1 view (last 30 days)
The data points are so close together that it increases and decreases with every data point and creates thousands of negligible changes. I need to single out the big changes. I am trying to use a method that will detect if a value at 'n' is greater than the previous 50 values and next 50 values. I do not want to write it out fully. i.e
if data(n) > data(n+1) && data(n+2) && ... && data(n+50)
fprintf('true')
end
I would like to consolidate that into a more efficient line of code.

Answers (1)

Greg
Greg on 30 Aug 2018
Have you tried the islocalmin and islocalmax functions (introduced in R2017b)? Specifically, check out the option for 'MinSeparation' to limit how closely local extrema may be detected to each other.

Tags

Products


Release

R2017a

Community Treasure Hunt

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

Start Hunting!