フィルターのクリア

How to filter an entire dataset of ecg signals

4 ビュー (過去 30 日間)
Sabaudian
Sabaudian 2022 年 6 月 14 日
編集済み: Sabaudian 2022 年 6 月 16 日
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 Center および File ExchangeDigital Filter Analysis についてさらに検索

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by