### Highlights fromFind Peak Value

4.19231

4.2 | 26 ratings Rate this file 107 Downloads (last 30 days) File Size: 40 KB File ID: #4242

# Find Peak Value

by Geng Jun

10 Dec 2003 (Updated 12 Dec 2003)

Help you find peak value from a lot of data.

### Editor's Notes:

This file was a File Exchange Pick of the Week

File Information
Description

It's a simple function. Can help you find peak value from a lot of datas. It contains some demos.

It's my first time to submit file, thanks for your using.

MATLAB release MATLAB 6.5 (R13)
Tags for This File
Everyone's Tags
Tags I've Applied
Comments and Ratings (36)
05 Jul 2012

Try this one;
http://www.mathworks.com/help/toolbox/signal/ref/findpeaks.html

07 Jun 2012

Thanks, It works great!

27 Apr 2012

Has anyone had any trouble finding the peaks for a vector that has both positive and negative values? Does not seem to be working with that.

29 Jun 2011

About the input parameter,"Range":
Range is a 4-element vector:
[Xmin, Xmax, Ymin, Ymax]
Xmin: the lower x boundary of region of interest(ROI).
Xmax: the upper x boundary of ROI
Ymin and Ymax are the same as Xmin and Xmax.
For example,
t=fpeak(A,B,30,[23,90,700,inf]);
means:
find the peaks whose x are between 23 and 90 and their values is between 700 and inf.

29 Jun 2011

I would be grateful if you put some explanation about the inputs. What is the input "Range"? and why is it a four-element vector?

02 Feb 2011

Great performance.

27 Sep 2010

Ah never mind... d'oh

27 Sep 2010

Sorry if this is a dumb question, but where is this getPeak function that is called within this function?? I tried finding it on File Exchange and am not getting anything...

Thanks

30 Aug 2010

There is a bug in this program. when the peak/valley contains more than 1 point with same value, this program will just ignore this peak/valley.

correction:
replace
tP=(sum(y(top:bottom)>=y(i))==1);
bP=(sum(y(top:bottom)<=y(i))==1);
with
tP=(y(ii)==max(y(top:bottom)));
bP=(y(ii)==min(y(top:bottom)));

27 May 2010

Poorly explained, poor performance for large data sets and requires too much parameter tweaking in order to find peaks.

19 Apr 2010
12 Aug 2009

it doesn't work.

Change line 9 in ma.m to
t=fpeak(A,B,30,[0,90,100,inf]);

and you will see that it picks peaks and valleys, both.

27 Aug 2008

working perfect!!

21 Jul 2008

Doesn't work when there are two data matching values at the top of a peak. Other than that, perfect.

10 Jun 2008
05 Jun 2008

works like a charm!!!

01 Mar 2008

Excellent! Thank you

09 Feb 2008

This works great!! Thank you so much :)

11 Dec 2007

this is the best that I found, relavent code

21 Apr 2007

I found a very good m code to pick up the peak data.
Thankyou

06 Mar 2007

I would really like to see a version of this that does functions of two wariables, eg extreme.m/extreme2.m

15 Dec 2006

i found extreme.m is geat and also find peaks from surface: extreme2.m! But this was the first i used

20 Jun 2006

Performance need improvements.

31 Aug 2005

Too slow on large sets of data. I prefer peakdetect.m

22 Feb 2005

I added small code (see below) to the getPeak function, now it works even better on my data.

if abs(y(i)-avg)<delta
p=[nan,nan];
return;
end
delta = std(y)
avg = mean(y) it can be local std and mean with window equal to +-several values of "s"

02 Feb 2005

It saved my time.

23 Nov 2004

28 Jul 2004

Not sure if I'm using this correctly but I'm not getting accurate peaks at all. My call to the function is fpeak(1:129, data, 2). "data" has 129 values. I'm getting values of 4.0 0 next to 5.0 1, and 3.0 2. Any suggestions would be appreciated.

20 Jul 2004

I just need a function to find peaks. Thank you so much to solve my problem and save my time. It works great. The sensitivity is actually the half-width of the peak. A point is defined as a peak if its value is biger than that of any s points ahead and s points behind.

21 Jun 2004

It worked perfectly for my example. Thanks!!

03 Jun 2004

Thanks for solving my Problem !!!
But I dont understand the sensitivity, can anybody help me ???

18 Apr 2004

Great Job.

06 Apr 2004

Really Good!
Thanks, It helps me alot!

12 Dec 2003

GOOD!

12 Dec 2003

You are Genius!

12 Dec 2003

very good