I have a matrix (xMatrix: 128 x 1068). I want to run my find peak code for all 1068 columns of the matrix to calculate the peak amplitude mean, peak amplitude std dev and number of peaks for each column. How can I do this so I create a new matrix (1068 x 3) displaying all these values for each coulmn?
Here is my find peak code:
for N=(1:1068)
[pks,locs]=findpeaks(xMatrix(:,N),'MinPeakDistance',20,'MinPeakHeight',750);
B=rmoutliers(pks,'mean');
[B,TF]=rmoutliers(pks);
peakampmean=mean(B);
peakstd=std(B);
numpeaks=numel(B);
end
Thanks
Sam

 채택된 답변

Erivelton Gualter
Erivelton Gualter 2019년 11월 20일

0 개 추천

for N=1:1068
[pks,locs] = findpeaks(xMatrix(:,N),'MinPeakDistance',20,'MinPeakHeight',750);
B = rmoutliers(pks,'mean');
[B,TF] = rmoutliers(pks);
peakampmean = mean(B);
peakstd = std(B);
numpeaks = numel(B);
% New Matrix
newMatrix(1,N) = peakampmean;
newMatrix(2,N) = peakstd;
newMatrix(3,N) = numpeaks;
end

추가 답변 (0개)

카테고리

Community Treasure Hunt

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

Start Hunting!

Translated by