Module HRT¶
-
class
HRT.HRT.HRT(RRInts=[], Labels=[])¶ The term HRT was firstly used by Schmidt et al.to describe the short term fluctuations in sinus HR that occur following VPCs.
In normal subjects, sinus rate initially accelerates and then decelerates compared with the HR previous to the VPC. Finally, the HR returns to the baseline. The RR-intervals sequences comprising 5 sinus RR-intervals before VPC, the compensatory pause, and subsequent 15 (or 20) sinus RR-intervals, is usually called VPC-tachogram. The physiological mechanism of HRT is supposed to be based on a baroreflex source, which has been confirmed in the literature. According to this, systolic blood pressure produced by the VPC is lower than previous beats, which leads to an inefficient baroreflex input. In turn, it causes vagal inhibition, increasing the HR. Subsequent deceleration is due to the ensuing compensatory pause and the increase in blood pressure, which induces a vagal stimulation and sympathetic withdrawal.
It has been suggested that HRT, being a vagally-dependent effective measure of baroreflex sensitivity related to the advancement of heart failure, might be used as a marker of congestive heart failure progression.
Indeed, in patients with heart failure regardless of etiology, HRT consistently predicted heart failure progression and all cause mortality [49]. HRT seems to be particularly useful in identifying high-risk patients with preserved left ventricular function, the group not covered by current indications for ICD. ISAR-HRT [48] was the first study that showed independent role of the HRT in predicting mortality not only in patients with significantly decreased Left Ventricular Ejection Fraction (LVEF), but especially in those with LVEF above 30%.
- Extracts from all rr intervals:
- The valid tachograms (associated to the correspondient labels and their ventricular beat position for each)
- The mean tachogram
- The value of the turbulence slop (TS) and the turbulence onset (TO) for each tachogram, including the mean tachogram (TS_average, TO_average)
- The RR intervals previous to the tachograms
-
HRT_preprocessing(Filter_type=u'Watanabe')¶ HRT is usually assessed in Holter recordings. A previous step to remove inadequate VPC-tachograms is required for obtaining accurate HRT measurements. The guidelines indicate to remove a VPC-tachogram when one of the following conditions are fulfilled
- The five sinus beats preceding the VPC and the 15 sinus beats following the compensatory pause include some arrhythmia, artifacts or false classifications.
- RR-intervals < 300 ms.
- RR-intervals > 2000 ms.
- Difference between consecutive RR-intervals higher than 200 ms.
- Difference between any RR-interval and the reference interval (mean of the five sinus intervals preceding the VPC) higher than 20%.
- Prematurity smaller than 20% of the reference interval.
- Compensatory pause smaller than 20% of the reference interval.
- This function performs a complete HRT preprocessing steps that includes:
- Find all positions of Ventricular beats
- Find all VPC-tachograms (5beats pre+VB+PC+20beats post)
- Filter all VPC-tachograms; i.e. find all the availables VPC-tachograms to be used on the HRT analysis
- This function fills the following attributes described at the begining:
- tachograms
- v_pos_tachs
- tachograms_ok
- v_pos_tachs_ok
- mean_tachogram_ok
- Filter_type : str, optional. Default = “Watanabe”
- So far, only “Watanabe’ filter is allowed.
-
RRBeforeV(mins_before_V=3)¶ Function that saves the values of the rr intervals during mins_before_V minutes before the ventricular beat. This funcition is intended for research purposes to be able to analyze HR time series before an individual VPC.
- mins_before_V : int, optional. Default = 3
- Integer indicating the period of minutes (3 minutes by default), before the tachogram, that is going to be saved for further studies.
-
TurbulenceOnset(VPC_tach)¶ This function computes the Turbulence Onset index.
The first phase of the HRT (early acceleration) is quantified by Turbulence Onset (TO), which is calculated using the following equation:
TO = (RR1 + RR2) − (RR−2 + RR−1) / (RR−2 + RR−1) × 100[%]where RR−2 and RR−1 are the two RR-intervals immediately preceding the VPC coupling interval, and RR1 and RR2 are the RR-intervals immediately following the compensatory pause.
- VPC_tach : numpy array (n_samples,1)
- VPC tachogram. It should be of length 21 samples. 5 previous to the VPC, the PC and 15 RR-intervals after the PC.
- TO : float
- Turbulence Onset index.
-
TurbulenceSlope(VPC_tach)¶ Function that computes the Turbulence Slope (TS) index. The second phase of the HRT (late deceleration) is quantified by Turbulence Slope (TS), which is the slope of the steepest regression line observed over any sequence of five consecutive RR-intervals within the first 15 sinus rhythm RR-intervals after the compensatory pause.
- VPC_tach : numpy array (n_samples,1)
- VPC tachogram. It should be of length 21 samples. 5 previous to the VPC, the PC and 15 RR-intervals after the PC.
- TS : float
- Turbulence Slope index.
-
compute()¶ Computes the TS and TO on all conditions tachograms (tachograms_ok) and on the mean tachogram
-
fill_HRT()¶ Returns a dictionary with all the values of the heart rate turbulence calculated
-
is_tach_valid(tach)¶ Checks if tach is a valid tachogram following these two conditions: i) Has a ventricular beat (V) at position 6 ([5]) ii) The rest of beats are normal (N)
-
paint_tach(tachogram)¶ Paints a tachogram (tach = 5N + V + 21N)