- use load to import the data
- use designfilt to get filter parameters --- EDIT: use butter to design a butterworth filter
- use filtfilt to apply the filter
- wrap a for-loop around everything to process all time series
- if you unzipped the files into datapath, use files = dir(fullfile(datapath,'*.mat')) to get a structure array with all filenames and then apply your for-loop on these files:
How to filter an entire dataset of ecg signals
20 views (last 30 days)
I'm learning Matlab so I am a bit lost. Basically I need to download a dataset of ecg signal and than I have to apply with filtfilt function a Band Pass Butterworth Filter of Third Order (1-30 Hz) on all the signal in the dataset.
I have download the dataset from physionet.org (the one I have attached) than I don't know what to do. I need simply to import the file into Matlab or there is another way to manage a dataset? Then, How can I apply the filter to all the signals in the dataset?
I don't want you to write for me the code, I'm just asking for guidance on how to procede or what kind of sources I can consult to help me understand what to do.
Konrad on 15 Jun 2022
Edited: Konrad on 15 Jun 2022
basically, you already described what to do:
for fileIdx = 1:numel(files)
data = load(fullfile(datapath, files(fileIdx).name));