How to remove whole cycles from an ECG trace?

1 view (last 30 days)
Cai Chin
Cai Chin on 14 Nov 2020
Commented: ICR on 15 Nov 2020
Hi, I am using MATLAB R2020a on a MacOS. I am attempting to remove the time values and corresponding voltage amplitudes of cycles in my vectorcardiographic trace which I have deemed to be outliers. I have already used the 'findpeaks' function to find the QRS peaks of these outlier cycles but do not know how to delimit the beginning and end of each cycle to remove these cycles from the trace. Additionally, I would like to be able to 'stitch' the time and voltage ampltidue values of the remaining trace together once these outlier cycle values have been removed.
I considered finding the P and T wave peaks and then differentiating the signal to find the isoelectric points (where the differential is zero) to delimit the start and end of the cycles but am not aware of reliable functions to find the peaks of the P and T waves.
I would be very grateful if anyone had any solutions to this. I am also attaching my signal.
Thanks in advance!
  1 Comment
ICR
ICR on 15 Nov 2020
Hi
I went through your data. I found that each ECG waveform is of similar duration in time. I am not sure about your findpeaks condition but this suggestion might work.
  1. Find Peaks
  2. Find the outlier peak position
  3. remove x values before the peak and x values after the peak.

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!