how to detect peaks in a particular range?

25 views (last 30 days)
I have a plot between 0-2000 Hz. I want to find peaks between 0-135 Hz only. I am using 'findpeaks' to detect the peaks but there is no way to extract the peaks within a particular limit. Can somebody suggest any method?

Accepted Answer

Mischa Kim
Mischa Kim on 5 Mar 2014
Edited: Mischa Kim on 5 Mar 2014
Ankita, you could simply limit your data in
[pks,locs] = findpeaks(data)
to cover only the frequency range between 0 and 135 Hz. For example, if your data is a 1-by-2001 vector (assuming x-vals to be evenly spaced) you could do
[pks,locs] = findpeaks(data(0:135))
  1 Comment
Asatur Khurshudyan
Asatur Khurshudyan on 29 Jan 2020
What is the data are not evenly spaced? In my example,
findpeaks(data(0:135))
does not work.

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!