For LOOP for splitting an ECG signal into different CHUNKS

조회 수: 10 (최근 30일)
Ola Ola
Ola Ola 2020년 2월 12일
댓글: Ola Ola 2020년 2월 12일
I have an ECG signal `[xx]` with length is 2000, I am trying to create "for loop function" that can split the signal into 10 separate chunks but I am experiencing difficulty. That is, I want to achieve something like this:
yy1 = xx(1:200) -----chunk 1;
yy2 = xx(201:400) ----chunk 2 ;
.
.
.
.
yy10 = xx(1801:2000)-----chunk 10;
A "for loop" will make this faster for me especially with a signal of larger length.
Please, any suggestion on how to do this with a for "loop"?
  댓글 수: 2
Geoff Hayes
Geoff Hayes 2020년 2월 12일
Ola - consider using reshape to split the signal into a 200x10 array (assuming exactly 2000 elements in ECG signal).
Jon
Jon 2020년 2월 12일
Sorry Geoff, I was busy writing my answer when you made the above suggestion. As you can see I also went for the reshape approach.

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

채택된 답변

Jon
Jon 2020년 2월 12일
편집: Jon 2020년 2월 12일
It's not really clear to me from your description what you are trying to do. From what I can infer from your description you have a 2000 by 1 or maybe 1 by 2000 vector of ECG data points and you want to break it up into 10 equal length portions for some type of analysis. I would suggest doing something like this where x is your original length 2000 vector of ECG points and y is the result of some calculation using some function that I will call for the example myFun. You can adapt accordingly to your specific needs
% define dimensions
numPoints = length(x); % 2000 in your case
numSegments = 10; % number of segments
segLength = numPoints/numSegments;
% make a data array that has a column of data for each non-overlapping segment
X = reshape(x,segLength,numSegments)
y = zeros(numSegments,1); % preallocate array to hold results
for k = 1:numSegments
y(k) = myFun(X(:,k))
end

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Data Import and Analysis에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by