Classify ECG Signals Using Long Short-Term Memory Networks
6 views (last 30 days)
Show older comments
where to download physionetdata download script for the problem.
1 Comment
jianyu wang
on 9 Sep 2018
Do you find where to download physinonetdata? This code "ReadPhysionetData", I can't run in the matlab. thank you
Answers (2)
Tunai Marques
on 4 Feb 2020
Edited: Tunai Marques
on 7 Feb 2020
Hi,
Try running the following code on your MATLAB, and then executing it.
openExample('deeplearning_shared/ClassifyECGSignalsUsingLSTMNetworksExample')
And just for reference, this is the content of the "ReadPhysionetData.m" script:.
% This script parses the data from the PhysioNet 2017 Challenge and saves
% the data into PhysionetData.mat for quick and easy future use.
% This function is in support of ClassifyECGSignalsUsingLSTMNetworksExample. It may
% change or be removed in a future release.
% Copyright 2019 The MathWorks, Inc.
% Download and unzip the data, training2017.zip, from the PhysioNet website
unzip('https://archive.physionet.org/challenge/2017/training2017.zip')
% Navigate to the directory
cd training2017
% File with filenames and labels
ref = 'REFERENCE.csv';
% Create a table that contains the filenames and corresponding label data
tbl = readtable(ref,'ReadVariableNames',false);
tbl.Properties.VariableNames = {'Filename','Label'};
% Delete 'Other Rhythm' and 'Noisy Recording' signals
toDelete = strcmp(tbl.Label,'O') | strcmp(tbl.Label,'~');
tbl(toDelete,:) = [];
% Load each file in the table and store the corresponding signal data
H = height(tbl);
for ii = 1:H
fileData = load([tbl.Filename{ii},'.mat']);
tbl.Signal{ii} = fileData.val;
end
% Leave the training2017 directory
cd ..
% Format the data properly for LSTM training
% Signals: Cell array of predictors
% Labels: Categorical array of responses
Signals = tbl.Signal;
Labels = categorical(tbl.Label);
% Save the variables to a MAT-file
save PhysionetData.mat Signals Labels
2 Comments
debojit sharma
on 24 Mar 2022
I was trying to use the above program for my own data (communication signal) but I am getting error in the line "tb1.Signal{ii} = fileData.val;" as Reference to non-existent field 'val'. Someone please help
See Also
Categories
Find more on AI for Signals in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!