How to filter an entire dataset of ecg signals

6 次查看(过去 30 天)
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
Konrad 2022-6-15
编辑:Konrad 2022-6-15
Hi
basically, you already described what to do:
  • 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:
for fileIdx = 1:numel(files)
data = load(fullfile(datapath, files(fileIdx).name));
...
end
Best, Konrad

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Digital Filter Analysis 的更多信息

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by