How to define a for loop for given FINDPEAKS problem ?

조회 수: 5 (최근 30일)
Parvesh Deepan
Parvesh Deepan 2024년 2월 24일
댓글: Dyuman Joshi 2024년 2월 29일
[A1,L] = findpeaks(A(:,1));
A1(:,2) = A(L,2);
[A2,L1] = findpeaks(A1(:,1));
A2(:,2) = A1(L1,2);
[A3,L2] = findpeaks(A2(:,1));
A3(:,2) = A2(L2,2);
  댓글 수: 2
Dyuman Joshi
Dyuman Joshi 2024년 2월 24일
편집: Dyuman Joshi 2024년 2월 24일
What exactly are you trying to do here?
Parvesh Deepan
Parvesh Deepan 2024년 2월 24일
Actually the matrix A comprises of two columns. 1st column contains acceleration (dependent variable) and the 2nd column is associated time-period (Variable).
The whole code isattached herewith.

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

채택된 답변

Dyuman Joshi
Dyuman Joshi 2024년 2월 24일
Try this -
n=3;
B = [num2cell(A,1); cell(n,2)]
for k=2:n
[B{k,1}, L] = findpeaks(B{k-1,1});
B{k,2} = B{k-1,2}(L);
end
Here 1st row of B corresponds to A, 2nd to A1, 3rd to A2 and 4th to A3.
Use indexing to access the data.
  댓글 수: 7
Parvesh Deepan
Parvesh Deepan 2024년 2월 28일
it is giving error, "Unrecognized function or variable 'd'.
Error in Chamoli1991VDC02 (line 6)
num = numel(d);"
Let me share you the .dat file so that you can recheck from your end. By the way, thanks a lot man!!
Dyuman Joshi
Dyuman Joshi 2024년 2월 29일
Ah, that's a typo. My bad.
To correct it, replace
num = numel(d);
with
num = numel(data);

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Correlation and Convolution에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by