You Snooze You Win: The PhysioNet/Computing in Cardiology Challenge 2018 1.0.0
(1,419 bytes)
% Author Mohammad M. Ghassemi, MIT
% -- April 8, 2018 --
% This function imports information about the training and testing
% set data for the 2018 PhysioNet Challenge. Specifically, it reads a
% header file and returns a matlab structure containing:
% - subject id
% - signal sampling rate
% - number of samples
% - location of the signals file
% - location of the arousal annoataions (for training set)
function data = parse_header(header_file_name)
% Import the header file
fid = fopen(header_file_name,'rt');
raw_header = textscan(fid,'%s','Delimiter','\n');
raw_header = raw_header{1};
fclose(fid);
% Process the first row of the header file
header_first_row = strsplit(raw_header{1}, ' ');
data.subject_id = header_first_row{1};
data.fs = header_first_row{3};
data.n_samples = header_first_row{4};
% Extract the signal names from the remainder of the file.
for j = 2:length(raw_header)
header_row = strsplit(raw_header{j}, ' ');
signal_names{j-1} = header_row{end};
end
data.signal_names = signal_names;
% Extract the signal location
[rec_dir, rec_name, ~] = fileparts(header_file_name);
data.signal_location = [rec_dir filesep rec_name '.mat'];
data.arousal_location = [rec_dir filesep rec_name '-arousal.mat'];