How can I find common peak and save it

조회 수: 1 (최근 30일)
Phudit Kanittasut
Phudit Kanittasut 2021년 4월 23일
편집: Pratheek Punchathody 2021년 4월 26일
clear
pure_brain = readmatrix('Pure Brain Spectra.csv');
[pks,locsBr] = findpeaks(pure_brain(:,2));
LvBrain = pure_brain(locsBr,2) > 0 ; % Set Threshold = 1E+4
xBrain = 1:size(pure_brain,1);
YBrain = pure_brain(locsBr(LvBrain),2);
%max of each column
YBrain = YBrain .* 100/max(YBrain);
[pks_min,pks_max] = bounds(pks); % Minimum & Maximum Values Of pks
pure_Liver = readmatrix('Pure Liver Spectra.csv');
[pks,locsLiv] = findpeaks(pure_Liver(:,2));
LvLiver = pure_Liver(locsLiv,2) > 0 ; % Set Threshold = 1E+4
xLiver = 1:size(pure_Liver,1);
YLiver = pure_Liver(locsLiv(LvLiver),2);
% max of each column
YLiver = YLiver .* 100/max(YLiver);
figure
plot(xBrain(locsLiv(LvBrain)), YBrain, '.r')
hold on
plot(xLiver(locsLiv(LvLiver)), YLiver, '.b')
hold off
grid
% To find common peaks considering the threshold of 1E+4:
lB = locsBr(LvBrain);
lL = locsLiv(LvLiver);
s = max(length(lB), length(lL));
locsLivNew = [lL; false(s-length(lL),1)];
locsBrNew = [lB; false(s-length(lB),1)];
common = ismember(lB,lL);
From my code I can find the common peak (same x coordinate but different Y), But I want to save it location in form of [ x, lB,lL] in array , I can only know where the common peak occur but I need to open the data to see the Y value.
The first picture show where the common peak occur
and I need to open the data to compare where its exactly X location
  댓글 수: 1
Pratheek Punchathody
Pratheek Punchathody 2021년 4월 26일
편집: Pratheek Punchathody 2021년 4월 26일
Please refer to this Link for the answer.

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Parametric Spectral Estimation에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by