Peak to Peak Distance Help

1 次查看(过去 30 天)
Jake Larson
Jake Larson 2013-1-22
So I have a large data set of monthly averages which came in as a vector of 5000 or so points. I converted into 12x235 a matrix and then averaged each column to give me a vector of yearly averages for the data. The data resembles a sin curve and I need to find the distance between each peak. When I tried to use the peak to peak function, [pks,locs]=findpeaks(data,'minpeakdistance',3), it told me it could not compute it for type double. I tried converting to int and no luck. Please help.
  3 个评论
Image Analyst
Image Analyst 2013-1-23
Are you sure it says it "could not compute it for type double", or does it really say "
Error using findpeaks (line 43)
Input arguments must be 'double'.
"? Because that's the complete opposite of what you said.
Jake Larson
Jake Larson 2013-1-23
[pks,locs]=findpeaks(x,'minpeakdistance',3)
Undefined function 'findpeaks' for input arguments of type 'double'.
I have no clue why it won't work for type double?

请先登录,再进行评论。

回答(2 个)

Leandro
Leandro 2013-1-22
编辑:Leandro 2013-1-22
The findpeaks needs data to be a double variable, not ints.
data=double(data)
[pks,locs]=findpeaks(data,'minpeakdistance',3)
  1 个评论
Jake Larson
Jake Larson 2013-1-23
I have it in doubles. This is the error i get
Undefined function 'findpeaks' for input arguments of type 'double'.

请先登录,再进行评论。


Greg Dionne
Greg Dionne 2014-2-6
It looks like you don't have the Signal Processing Toolbox.
You get that error when you try accessing a function that doesn't exist.
Try:
>> [pks,locs]=completelyundefinedfunction(x,'minpeakdistance',3) Undefined function 'completelyundefinedfunction' for input arguments of type 'double'.

Community Treasure Hunt

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

Start Hunting!

Translated by