Info
此问题已关闭。 请重新打开它进行编辑或回答。
In an assignment A(I) = B, the number of elements in B and I must be the same.
1 次查看(过去 30 天)
显示 更早的评论
I'm not quite sure what is wrong with my code. I am trying to figure out a ranges from my y-axis to determine what to name certain peaks: For example, if the peaks lie within the range of 0.1-0.3, the are considered "twave", from 0.3-0.6 they are "rwave", and from 0.6 - 1 they are "wave".
Does anyone have any advice?
"equalize" is the file that I am reading
function [ pwave,rwave,twave ] = peakwaves( equalize )
peakwaves = findpeaks(equalize, 'MINPEAKHEIGHT',0.1); %configures all of the peaks
a = length(peakwaves);
counter1 = 0;
counter2 = 0;
counter3 = 0;
for i = 0.1:a;
if 0.3 < a && a < 0.6;
counter = counter + 1;
pwave(counter) = peaks(i);
elseif .1 < a && a < 2.9;
counter2 = counter2 + 1;
twave(counter2) = peaks(i);
else a < 1;
counter3 = counter3 + 1;
rwave(counter3) = peaks(i);
end
end
0 个评论
回答(1 个)
Azzi Abdelmalek
2013-11-6
编辑:Azzi Abdelmalek
2013-11-6
When you wrote pwave(counter) = peaks(i); , peaks is not defined
Also a = length(peakwaves); is an integer, What [0.3, a] represent?
Try this
function [ pwave,rwave,twave ] = peakwaves( equalize )
peakwaves = findpeaks(equalize, 'MINPEAKHEIGHT',0.1);
pwave = peakwaves(0.3 < peakwaves & peakwaves < 0.6);
rwave = peakwaves(0.6 <= peakwaves & peakwaves < 1);
twave = peakwaves(1 <= peakwaves & peakwaves < 2.9);
12 个评论
此问题已关闭。
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!