Input Data

This page provides an overview of how to provide Input Data to RRest.

Table of contents

  1. Using Publicly Available Datasets
  2. Using Your Own Datasets
    1. Formatting your dataset
    2. Saving your dataset in the appropriate location
    3. Calling RRest to analyse your dataset

Several datasets are publicly available for use with RRest, as detailed here. You may also wish to use your own dataset.

Using Publicly Available Datasets

Publicly available datasets are either provided as part of the RRest Project, or are available from other public sources. Those provided as part of the RRest Project, such as the Vortal Dataset, are already in the required format for use with the RRest toolbox. Those available from other public sources, such as the MIMICII Dataset can be easily used with the RRest toolbox by downloading and re-formatting the datasets using the ‘data_importer’ scipts provided here.

Once you have downloaded a dataset, you are ready to use RRest. You should specify its location to RRest in the up.paths.root_folder variable, in the setup_universal_params.m script. RRest can be run using the command detailed here.

Using Your Own Datasets

You may alternatively wish to analyse your own dataset with RRest. There are three steps to doing so: formatting the your dataset correctly, saving it in the appropriate location, and using a Matlab command to call RRest appropriately. These are now explained:

Formatting your dataset

The easiest way to understand how to format your dataset for use with RRest is to look at an example, such as the VORTAL_rest dataset presented here.

A dataset must be stored in a Matlab structure array called data to be used with RRest. The structure array should be of dimension [1, n], where n is the number of recordings. The structure array should contain the following fields:

  • ppg : e.g. data(1).ppg.fs = 125 , specifying the sampling rate in Hz, and data(1).ppg.v = [1,2,3,2,1] , where [1,2,3,2,1] is the row vector of PPG values for this recording.
  • ekg : e.g. data(1).ekg.fs = 125 , specifying the sampling rate in Hz, and data(1).ekg.v = [1,2,3,2,1] , where [1,2,3,2,1] is the row vector of ECG values for this recording.

It must also contain reference respiratory data. This can either be specified as the timings of individual breaths, the numerical outputs of a continuous monitor, or as a reference respiratory signal. To specify the timings of individual breaths:

  • ref.breaths : e.g. data(1).ref.breaths.t = [1.2,3.7,5.1,6.2], where [1.2,3.7,5.1,6.2] is the column vector of breath timings in seconds.

To specify the numerical outputs of a continuous monitor:

  • ref.params.rr : e.g. data(1).ref.params.rr.v = [20,21,20,19], where [20,21,20,19] is the column vector of RRs measured in breaths per minute; and data(1).ref.params.rr.t = [1,2,3,4], where [1,2,3,4] is the column vector of corresponding times in seconds.

To specify a reference respiratory signal (in this case an impedance, imp , signal:

  • imp : e.g. data(1).imp.signal_e_vlf.y = [1,2,3,2,1] , where [1,2,3,2,1]` is the row vector of impedance values for this recording.

In addition, individual recordings can be assigned to groups. For instance, in the synthetic dataset the signals are assigned to baseline wander (bw), amplitude modulation (am) and frequency modulation (fm) groups. Groups can be called by any string name you wish. If you do specify groups then a sub-group analysis will be performed as well as the analysis of the entire dataset (if not please simply give all recordings the same group name). To specify a group use the following field:

  • group* : _e.g. data(1).group = 'bw'

Saving your dataset in the appropriate location

To ensure that your data is saved in an appropriate location for RRest to be able to find it specify up.paths.root_folder as the directory which contains the dataset. This variable is set in the setup_universal_params.m script.

Calling RRest to analyse your dataset

Use the following command to call RRest When using your own dataset:

RRest('dataset_name')

where 'dataset_name' should be replaced with the name of the dataset. For instance, if your dataset is saved as VORTAL_rest_data.mat then the appropriate command would be:

RRest('VORTAL_rest')


Table of contents


Copyright © 2021 Peter Charlton.