У меня вопрос по поводу findpeaks.Я хочу использовать его для обнаружения пиков в моем временном ряду сигнала (Сигнал 1).Это прекрасно работает, но у меня также есть суррогатные данные, служащие порогом значимости, равной длины (сигнал 2).Теперь я хочу использовать findpeaks для Сигнала 1, но только если Сигнал 1 больше, чем Сигнал 2 в этот момент времени.Я пытался использовать обычные свойства findpeaks, но пока ничего не получалось ... Вот что у меня есть сейчас:
GPDC
- это двойное 9x9x512.Dim 1 содержит значения частичной направленной когерентности, оцененные с помощью многовариантной авторегрессионной модели в направлении xi - xj, Dim 2 содержит то же самое для xj -xi, а Dim 3 представляет количество интервалов частоты.eEPDCsth
- это двойное число 9x9x512, содержащее соответствующие суррогатные данные.f
- это двойное число 1x512, содержащее значения частоты.Я думаю, прямо сейчас, ссылка> = не работает, потому что она не зависит от времени, то есть она не сравнивает сигнал точка за точкой, а скорее в целом.Это моя главная проблема, я думаю ...
Sz=9;
for i=1:Sz
for j=1:Sz
if squeeze(GPDC(i,j,:)) >= squeeze(eEPDCsth(i,j,:))
[pks_1{i,j},locs_1{i,j}] = findpeaks(squeeze(GPDC(i,j,:)),f,'npeaks',5,'MinPeakHeight', .1);
end
end
end