Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2024 Nov 1.
Published in final edited form as: J Physiol. 2023 Oct 3;601(21):4767–4806. doi: 10.1113/JP284363

An automated respiratory data pipeline for waveform characteristic analysis

Savannah Lusk 1,*, Christopher S Ward 2,*, Andersen Chang 1,*, Avery Twitchell-Heyne 1, Shaun Fattig 1, Genevera Allen 3,4, Joanna Jankowsky 1,5, Russell Ray 1,6,
PMCID: PMC10841337  NIHMSID: NIHMS1928211  PMID: 37786382

Abstract

Comprehensive and accurate analysis of respiratory and metabolic data is crucial to modelling congenital, pathogenic, and degenerative diseases converging on autonomic control failure. A lack of tools for high-throughput analysis of respiratory datasets remains a major challenge. We present Breathe Easy, a novel open-source pipeline for processing raw recordings and associated metadata into operative outcomes, publication-worthy graphs, and robust statistical analyses including QQ and residual plots for assumption queries and data transformations. This pipeline uses a facile graphical user interface for uploading data files, setting waveform feature thresholds, and defining experimental variables. Breathe Easy was validated against manual selection by experts, which represents the current standard in the field. We demonstrate Breathe Easy’s utility by examining a 2-year longitudinal study of an Alzheimer’s Disease mouse model to assess contributions of forebrain pathology in disordered breathing. Whole body plethysmography has become an important experimental outcome measure for a variety of diseases with primary and secondary respiratory indications. Respiratory dysfunction, while not an initial symptom in many of these disorders, often drives disability or death in patient outcomes. Breathe Easy provides an open-source respiratory analysis tool for all respiratory datasets and represents a necessary improvement upon current analytical methods in the field.

Keywords: Whole body plethysmography, respiratory analysis, breath analysis, waveform feature extraction, mixed effects modeling, Alzheimer’s disease

Introduction

Whole-body plethysmography (WBP) in rodent models is an invaluable tool for investigating the etiology, progression, and comorbidities of many diseases including congenital respiratory disorders such as Sudden Infant Death Syndrome, contagious respiratory viruses such as SARS-CoV-2, respiratory dysfunction derived from spinal cord and brain injuries, and sleep disordered breathing that may exacerbate neurodegenerative disorders such as Alzheimer’s Disease. Elaborated WBP systems uses temperature, pressure, humidity, etc., to estimate tidal volume, thereby offering novel and critical insights into disease etiology and progression. This technique has become integral in the analysis of respiratory outcomes leading to an average of over 600 articles every year published using this method for the last 20 years. Despite the importance of this technique, its application remains limited as few, if any, comprehensive, open-source tools exist for respiratory waveform analysis, leaving manual data annotation as the dominant approach. To aid in the consistent analysis of respiratory waveform and metabolic data, and to make possible high-throughput and immensely sized experimental designs, we have developed the Breathe Easy software package.

The analysis of plethysmography data consists of two components: 1) the conversion of collected waveforms into physiological measures, e.g., respiratory frequency and tidal volume, and 2) the statistical assessment and graphical display of those measures and their associative relationships with independent variables. Labor-intensive, time-intensive, and expertise-dependent manual selection of data remains the most common approach (Brown et al., 2019; Spinieli et al., 2021), which results in a significant bottleneck. Current annotation methods limit reproducibility within and between labs (Table 1); is subject to observer bias (i.e., where humans tend to select for particularly slow, even breaths), especially when identifying and excluding movement artifacts; and typically includes only a tiny sample of all available data (usually only examining 30 seconds – 2 minutes of breathing per experimental condition(Ebel et al., 2017; Brown et al., 2019; Spinieli et al., 2021)). Analysis of the selected data can be similarly encumbered by a heavy reliance on more manual approaches that involve copying and pasting manually-selected data into inherited spreadsheets with default formulae (Ebel et al., 2017; Brown et al., 2019). Each component of the analysis is manually driven, which makes analysis of data from even the simplest of experiments exceedingly time consuming. The few available commercial solutions that enable partially automated analysis are 1) expensive; 2) closed source; 3) remain limited in their overall capabilities; and 4) often require purchase of a commercial plethysmograph system for full analytical options, which precludes analysis of data collected on other systems and the use of custom WBP systems (Table 2). These limitations further constrain the complexity and magnitude of respiratory studies and dissuade multivariate experimental designs examining interactions across multiple variables such as genotype, drug, pathogen, injury, physiological challenges (e.g., hypercapnic, hypoxic, or room air breathing), sex, and age (in the case of longitudinal studies). Thus, approaches are lacking that enable the customized evaluation of large or complex (multivariate) datasets for cardiorespiratory and metabolic physiology studies.

Table 1.

Non-exhaustive literature review of reported respiratory variables from 1998–2022 from a variety of laboratories across the world. Values were taken from graphs as most publications did not report raw values. Only values for control, adult mice were used to populate this table.

Original units reported Values reported after conversion
Ref Year Respiratory rate/ Ventilatory frequency Tidal volume Minute volume/ Ventilation Respiratory rate/ Ventilatory frequency
(breaths min.−1)
Tidal volume
(mL breath−1 g−1)
Minute volume/ Ventilation
(mL min.−1 g−1)
(Lusk et al., 2022) 2022 breaths min.−1 mL breath−1 g−1 mL min.−1 g−1 55–275 0.002–0.014 0.01–3
(Dauger et al., 1998) 1998 Not explicitly reported. μL g−1 μL sec.−1 g−1 73–162 0.0065–0.0085 0.9–1.02
(Martinez et al., 2019) 2019 breaths min.−1 mL breath−1 g−1 mL min.−1 g−1 125–260 0.004–0.013 0.01–3
(Tankersley et al., 2002) 2002 breaths sec.−1 μL g−1 mL min.−1 g−1 150–180 0.0057–0.0061 0.75–1.1
(Silva et al., 2021) 2021 breaths min.−1 mL kg−1 mL min.−1 kg−1 150–600 0.008–0.013 1.75–5
(Bassi et al., 2012) 2012 breaths min.−1 mL mL min.−1 170 0.011* 2.18*
(Romer et al., 2017) 2017 breaths min.−1 mL mL min.−1 175–190 0.0036–0.0054 0.54–0.71
(Gestreau et al., 2010) 2010 cycles min.−1 μL g−1 mL min.−1 g−1 180 0.0064–0.007 1.3
(Huang et al., 2016) 2016 breaths min.−1 NR NR 185–210 NR NR
(Fechtner et al., 2015) 2015 breaths min.−1 PO NR 187–211.9 PO NR
(Toward et al., 2013) 2013 breaths min.−1 μL g−1 mL g−1 231–253 0.0049–0.0061 1.2–1.38
(Ward et al., 2020) 2020 breaths min.−1 NR NR 250 NR NR
(Sun et al., 2017) 2017 breaths min.−1 mL breath−1 g−1 mL min.−1 g−1 275–300 0.12–0.14 3.5–4.5
(Hill et al., 2018) 2018 breaths min.−1 mL breath−1 mL min.−1 400 0.012–0.015 5
(Vogelgesang et al., 2018) 2018 breaths sec.−1 NR NR 420 NR NR
(Ray et al., 2011) 2011 NR NR mL min.−1 g−1 NR NR 3
(Alhaddad et al., 2013) 2013 NR NR μL NR NR 3.11
(Lewanowitsch et al., 2006) 2006 PO PO PO PO PO PO
(Goineau et al., 2010) 2010 PO PO mL min.−1 PO PO 1–1.6

NR = not reported and PO = percentage only. PO also includes percent change, arbitrary units, and delta values.

*

Where units reported do not match the standard of Breathe Easy, conversions were made using reported body weight values or standard conversions to match the units to those of Breathe Easy to allow for easier across-publication comparisons. If body weight was not reported, an * marks those values and average body weight was assumed to be 27.5 g.

Table 2.

Feature comparison of commercially available products to Breathe Easy. This table was generated using publicly available information from each of the companies’ websites.

Manufacturer:
System/Software:
Breathe Easy DSI
Finepointe
DSI
Ponemah
ADI
LabChart
EMKA Scireq
iox2
Features
Free/ Open source? Y N N N N
Data collection Designed around ADI Powerlab data collection but can use outputs from other systems through conversion to .txt file input standard Y (limited to Finepointe) Y (limited to Ponemah) Y (also has signal import if in compatible format) Y (must purchase conversion software to use with recordings performed on other systems)
Breath detection Y Y Y Y Y
Calculation of basic breath parameters (volume, frequency, flow, etc.) Y Y - Y (frequency and volume) Y
Detection of breathing features (apnea, sigh, cough) Y (apnea, sigh) Y - - -
Calculation and normalization with metabolic parameters (VO2, VCO2) Y Y - Y -
Manual sub-selection of data for analysis Y Y - Y Y
Automated selection of data for analysis (basic per breath) Y Y - - Y
Automated selection of data for analysis (filtered calm, quiet eupneic breathing from desired conditions only) Y - - - -
Summary figures Y Y - - Y (requires separate software purchase)
Summary statistics Y Y - - Y (requires separate software purchase)
Statistical comparisons between groups Linear Mixed Effects Model with Tukey Post-hoc; ANOVA for some metadata comparisons when appropriate ANOVA - - -

Here we present Breathe Easy, a novel, modular pipeline that can be run unsupervised in a continuous fashion over large datasets or more flexibly for highly customized analyses, thereby overcoming the above limitations. Breathe Easy consists of three modules: 1) a graphical user interface for rapid and facile loading of data and customization of parameters surrounding waveform feature extraction, desired statistical analysis, and graphical displays; 2) a breath extraction module to segment and quantify pertinent respiratory variables using pressure, temperature, and gas concentration waveforms filtered by exclusion criteria; and 3) an analysis and graphing module that generates publication-worthy graphs and statistics accompanied by QQ and residual plots to gauge adherence to assumptions. We first validated Breathe Easy to show that it outperforms commonly used manual annotation techniques. We then used Breathe Easy to analyze a large, longitudinal respiratory dataset collected over two years (more than 600 WBP sessions) using a genetic model of Alzheimer’s Disease (AD) and demonstrated that our software robustly handles a multitude of waveform anomalies and can readily manage large terabyte-scale respiratory data sets.

We examined breathing in a genetic AD mouse model as sleep disordered breathing (SDB) is strongly correlated with poor outcomes in the progression of AD and AD itself often presents with autonomic dysfunction. It is hypothesized that AD progression is exacerbated, in part, through repeated bouts of hypoxemia and reoxygenation that likely produce increased reactive oxygen species and autonomic dysfunction. However, the neuropathology associated with AD itself may also drive dysfunction across autonomic networks, particularly in respiratory homeostatic circuits involved in the hypoxic and hypercapnic ventilatory reflexes that could potentially lead a destructive feedforward loop. To determine the potential for AD pathology to drive changes in respiratory function, we tested an AD mouse model that inducibly develops amyloid plaques in the forebrain. Mice were repeatedly characterized for respiratory function over a two-year period. After quantifying and comparing data from this large cohort using Breathe Easy, our results suggest that amyloid plaque driven pathology is not a major driver of respiratory dysfunction in this model. Notably, our results contrast with forebrain streptozotocin injection AD models that show perturbed respiratory function (Ebel et al., 2017; Brown et al., 2019; Humphrey et al., 2023).

Methods

Ethical approval

All animal studies were conducted at the AALAC accredited animal facilities at Baylor College of Medicine and all procedures were reviewed and approved by Baylor College of Medicine Institutional Animal Care and Use Committee. All protocols conform to the principles and regulations as described in the Editorial by Grundy (Grundy, 2015). The investigators understand the ethical principles under which the journal operates, and our work complies with the Journal of Physiology’s animal ethics guidelines.

Animal protocols

Breeding, genetic background, and maintenance of mice

Mice were maintained by mating a double Tg APP/tTA male on C57BL/6J background to a WT FVB/NJ female resulting in offspring that were FVBB6 F1. All four groups of mice used in this study were derived from this crossing: 1) wildtype (WT) FVBB6 (control), 2) Tg102_tetO-APPswe/ind (tetO) (control, MMRRC #34845(Jankowsky et al., 2005)), 3) TgCaMKIIα-tTA_LineB (CaMK) (control, Jackson Laboratories #3010(Mayford et al., 1996)), and 4) Tg102_tetO-APPswe/ind; TgCaMKIIα-tTA_LineB (Exp) (experimental). WT control mice are included as background genetic controls. Groups 2 and 3 represent single transgenic controls wherein transgenic insertions included in the experimental animals were present, but because only one of the transgenic alleles was included the resultant APP phenotype is not present. Group 4 was the experimental group where both transgenic alleles required for APP expression are present. Briefly, in the absence of doxycycline, tetracycline transactivator expressed under the CaMKIIα promoter allowed for the expression of the tetracycline-responsive chimeric mouse APP. This version of APP contained a humanized Aβ domain encoding the Swedish and Indiana mutations. Animals were housed on a 12h/12h light cycle with food and water ad libitum. Offspring were started on a Dox diet during the first postnatal week until 6 weeks of age when they were placed on regular chow. Animals were measured at multiple timepoints from ~5 months after Dox withdrawal to ~19 months after Dox withdrawal. There was no biologically significant difference in the weight or age of the mice in all groups at each recorded timepoint (Tables 3CD).

Table 3.

Number of mice included in analysis of hypercapnic (A) and hypoxic (B) ventilatory responses by age, gas condition, genotype, and sex. Average age (C) and weight (D) of all mice recorded by genotype, age group, hypercapnia or hypoxia exposure, and sex.

A Number of mice included for analysis in hypercapnia experiments by age, gas condition, genotype, and sex.
Age
Sex Genotype Condition 5 mo. 7 mo. 10 mo. 12 mo. 14 mo. 16 mo. 19 mo.
Female CaM 5% CO2 6 6 6 6 6 5 6
Room Air 6 6 6 6 6 6 6
Exp 5% CO2 6 6 6 5 6 5 6
Room Air 6 6 6 5 6 6 6
tetO 5% CO2 4 4 4 2 4 4 3
Room Air 4 4 4 4 4 4 4
WT 5% CO2 6 6 6 5 6 6 5
Room Air 6 6 6 5 6 6 6
Male CaM 5% CO2 6 6 6 5 6 5 5
Room Air 6 6 6 5 6 5 5
Exp 5% CO2 5 5 5 3 5 5 5
Room Air 5 5 5 4 5 5 5
tetO 5% CO2 6 6 6 6 6 5 5
Room Air 6 6 6 6 6 5 5
WT 5% CO2 5 5 5 5 4 5 5
Room Air 5 5 5 5 4 5 5
B Number of mice included for analysis in hypoxia experiments by age group, gas condition, genotype, and sex.
Age
Sex Genotype Condition 5 mo. 7 mo. 10 mo. 12 mo. 14 mo. 16 mo. 19 mo.
Female CaM 10% O2 4 3 4 4 4 4 3
Room Air 4 3 4 4 4 4 3
Exp 10% O2 6 6 6 6 6 6 6
Room Air 6 6 6 6 6 6 6
tetO 10% O2 6 6 6 6 6 6 6
Room Air 6 6 6 6 6 6 6
WT 10% O2 6 6 6 6 3 6 5
Room Air 6 6 6 6 3 6 5
Male CaM 10% O2 5 6 6 6 6 5 6
Room Air 6 6 6 6 6 5 6
Exp 10% O2 5 5 5 5 5 4 4
Room Air 5 5 5 5 5 5 5
tetO 10% O2 5 6 6 6 6 5 5
Room Air 6 6 6 6 6 5 5
WT 10% O2 5 5 5 5 5 5 5
Room Air 5 5 5 5 5 5 5
C Average age, in postnatal days, of mice by genotype, age group, hypercapnia or hypoxia exposure, and sex.
Age
Sex Genotype Condition 5 mo. 7 mo. 10 mo. 12 mo. 14 mo. 16 mo. 19 mo.
Female CaM Hypercapnia 172.2 235.0 320.8 403.3 463.7 521.3 604.5
Hypoxia 176.2 241.0 322.3 412.0 468.0 525.0 607.0
Exp Hypercapnia 171.8 235.7 320.7 406.0 464.0 520.7 603.0
Hypoxia 175.5 240.5 322.3 410.7 467.7 524.4 605.3
tetO Hypercapnia 175.3 228.0 307.8 379.8 440.8 501.5 585.0
Hypoxia 180.3 230.5 312.0 388.5 444.5 504.5 588.0
WT Hypercapnia 173.2 229.0 308.8 380.2 440.8 502.3 585.7
Hypoxia 178.2 231.7 313.2 387.7 446.7 505.3 588.6
Male CaM Hypercapnia 173.0 230.2 317.0 393.2 452.7 513.6 599.2
Hypoxia 175.8 236.0 319.7 398.7 462.7 517.4 602.2
Exp Hypercapnia 169.6 233.0 317.0 390.3 450.4 512.2 597.8
Hypoxia 173.8 237.4 320.0 396.8 457.8 515.7 600.7
tetO Hypercapnia 177.3 228.0 306.7 388.2 448.2 501.6 586.2
Hypoxia 182.4 231.2 308.3 396.5 455.8 506.4 587.8
WT Hypercapnia 172.4 229.8 314.0 387.8 444.3 508.4 592.4
Hypoxia 176.4 234.0 316.2 394.2 457.2 511.6 594.6
D Average weight, in postnatal days, of mice by genotype, age group, hypercapnia or hypoxia exposure, and sex.
Age
Sex Genotype Condition 5 mo. 7 mo. 10 mo. 12 mo. 14 mo. 16 mo. 19 mo.
Female CaM Hypercapnia 31.10 36.00 39.05 40.32 43.43 43.88 45.81
Hypoxia 31.56 36.28 39.46 41.92 43.67 43.74 45.54
Exp Hypercapnia 33.35 37.68 41.76 41.98 46.12 45.40 47.97
Hypoxia 32.99 37.80 42.00 42.34 44.55 45.85 47.91
tetO Hypercapnia 36.38 35.82 38.50 41.08 42.11 45.03 46.71
Hypoxia 35.84 36.79 39.47 41.73 42.55 44.98 45.88
WT Hypercapnia 30.42 31.11 33.68 33.59 38.18 40.39 39.92
Hypoxia 29.79 31.92 34.74 35.53 36.59 39.47 39.58
Male CaM Hypercapnia 42.91 44.40 47.46 47.86 47.87 49.98 51.05
Hypoxia 41.34 43.00 46.74 48.15 48.63 49.52 50.25
Exp Hypercapnia 40.30 44.24 44.16 47.07 47.70 48.76 48.43
Hypoxia 40.18 43.39 44.36 46.80 48.53 47.56 46.13
tetO Hypercapnia 44.37 45.59 49.66 49.37 52.73 52.21 54.69
Hypoxia 43.15 45.10 48.94 50.02 52.67 51.91 54.07
WT Hypercapnia 43.48 46.33 48.33 48.41 51.30 49.30 52.42
Hypoxia 41.94 45.10 48.01 48.99 50.11 49.71 52.57

Experimental design

A total of 4 genetic groups were used in this study as outlined above. See Tables 3AB for the number of mice and Table 3D for the average age of mice included for analysis for each timepoint, air exposure type, genotype, and sex. Briefly, we started with 11 WT controls, 12 tetO controls, 12 CaMK controls, and 11 Exp mice with sex evenly distributed for each group. The number of animals recorded does not always reflect the number of animals included in analysis as certain portions of the recording or entire recordings may not have been of sufficient quality. These cases lead to the mismatching in number of mice at those timepoints and conditions. Although halves of recordings may be included in analysis, our pipeline evaluates the results based on all breaths rather than averages, so all accepted breaths for each genotype at each time point for a given exposure were combined together to increase the power and accuracy of our analyses.

Each timepoint consisted of recording the mice for baseline room air breathing followed by either hypercapnic or hypoxic exposure. After a few days of recovery and reset, the same mice were recorded a second time for baseline room air breathing followed by the opposite challenge exposure, hypoxia or hypercapnia (Figure 1).

Figure 1.

Figure 1.

Schematic of our longitudinal Alzheimer’s study where average age at each timepoint across the length of the experiment is shown followed by a detailed protocol followed with each animal at each timepoint. Also provided is an explanation of variables included in analyses for this study.

At the end of the two year experiment, mice were euthanized with an overdose of pharmaceutical class commercial euthanasia agent containing sodium pentobarbital at a lethal dose of 390 mg/kg administered intraperitoneally. This was followed by a secondary method of either decapitation or bilateral opening of the thorax.

Whole body plethysmography

Whole body plethysmography on conscious, unrestrained mice was performed on ~7 month to ~21-month-old adult mice (Ray et al., 2011). Briefly, mice were habituated for 5 days and tested within 1 week of the last day of habituation. Habituation consisted of ~5 minutes of handling, rectal temperature and body weight measurement, and 30 minutes in a plethysmography chamber (Martinez et al., 2019). On the day of testing, body weight and rectal temperature were recorded prior to the WBP experiment. Animals were then placed in a water-jacketed, temperature-controlled (30°C), flow-through plethysmography chamber and allowed to acclimate for 30 minutes in hydrated (via an inline bubble chamber) room air gas (21% O2/ 79% N2). Following acclimation, the animal was recorded in room air for up to 1 hour for baseline measurements. After room air, the gas was switched to hydrated hypercapnic (5% CO2/ 21% O2/ 74% N2) or hydrated hypoxic (10% O2/ 90% N2) gas for a 20–30-minute exposure. Gas was then switched back to room air for up to one hour. Lengths of recordings were adjusted as needed based on animal activity to ensure sufficient collection of calm quiet breathing. The animal was removed from the chamber at the end of the last room air period and rectal temperature was recorded upon removal, and 30 minutes after removal. Body temperature from the beginning and end of the recordings were used to linearize body temperature over the duration of the recording in SASSI for use in Drorbaugh and Fenn-derived Bartlett-Tenney calculations (Drorbaugh & Fenn, 1955; Bartlett & Tenney, 1970). Exiting gases were dried via a nafion tube embedded in silicone desiccant prior to entry in gas concentration sensors.

Data collection

The plethysmography system consisted of two chambers, a reference chamber and a chamber for the animal. Both chambers were 140 mL in volume and consist of hand-blown, double-walled glass cylinders. The inter-cylinder space allowed for temperature-controlled water circulation to ensure a steady chamber temperature. A Validyne DP45–14 differential pressure transducer was used to measure pressure changes between the animal chamber and a reference chamber. The DP45 signal was converted by a Validyne CD15 carrier demodulator. Oxygen and carbon dioxide concentrations were measured using AEI S-3A/I oxygen analyzer with N-22M Sensor and AEI CD-3A carbon dioxide analyzer with P-61B Sensor. Chamber temperature was continuously measured using a Traceable (previously Control Company) brand type K thermocouple with analog output. All data was recorded via an ADI PowerLab analogue to digital recorder using LabChartPro (RRID:SCR_023643) in real time. Volumetric calibration injections and withdrawals are carried out using a 20 µl pipette (itself calibrated using water weight at 23 °C on an analytical scale). Two types of volume calibration injections are made, the first of which is a series of single, rapid injections or withdrawals that are held in place to examine the pressure decay of the system. The second is a series of rapid injections and withdrawals in series at a frequency of 3Hz.

The raw signals produced during whole body plethysmography experiments are a time series of voltages directly proportional to the sensor readings over the course of the recording session. In the experimental paradigm that we used, these sensors captured 1) the differential pressure produced within the recording chamber due to inhalation and exhalation via the countercurrent heating and cooling of respired air with a small contribution from compression and rarefaction outside and within the animal that is equilibrated as a function of airway resistance, 2) the temperature of the recording chamber, 3) the oxygen concentration of the gas leaving the chamber, and 4) the carbon dioxide concentration of the gas leaving the chamber. A sampling frequency of 1,000 Hz was used in the current data as it was sufficient to permit high resolution and low risk of aliasing. The breathing waveform was used to derive temporal and volumetric parameters related to breathing such as breath cycle duration, breathing rate, and an uncorrected tidal volume. The use of a temperature-clamped chamber to compare to body temperature provided a more accurate estimate of true tidal volume (Bartlett & Tenney, 1970). The remaining channels of data corresponding to oxygen and carbon dioxide concentrations were used to calculate metabolic parameters such as oxygen consumption (V˙O2), which were combined with breathing parameters like ventilation (V˙E) to ascertain if changes in breathing are consistent with metabolic demand.

Consideration of data

The whole-body chamber, where the animal is housed during plethysmography experiments, is set up for near-balanced gas flow-through. During the experiment, the pressure fluctuations, largely due to heating and cooling of inspired and expired air respectively with a small contribution from compression and rarefaction of space inside and outside of the body in this chamber are compared to that of a reference chamber. The reference chamber is a duplicate of the containment device and does not house an animal during experimentation. Thus, any pressure differentials recorded between the experimental chamber and the reference chamber are from two sources. First, there may be slow changes in relative pressures due to inevitable imbalances with inflow and outflow. To guard against chamber over pressurization, as we run at a slightly higher inflow pressure, we connect the two chambers with a small gauge cannula to act as a low frequency band pass filter that prevents rapid breathing and movement pressure changes to transit the cannula. We also engineer a small leak to the atmosphere in the reference chamber to maintain the overall system at room atmospheric pressure. The final sources of pressure changes are respiration, respiration related behaviors (sniffing), and animal movement. This simple design allows for precise measurement of animal respiratory patterns. Optimization of flow characteristics ensures a stable baseline pressure waveform and minimizes noise in the data to facilitate software analysis. When this system is combined with oxygen and carbon dioxide sensors in line with the experimental chamber outflow, data can then be used to determine even more key variables including, but not limited to, oxygen consumption and carbon dioxide production, which enables the normalization of respiratory output to one or more metabolic parameters. It is imperative that users input the scale readings from their rotameter and the manufacturer issued conversion table to flow rate as part of their SASSI automated settings to ensure that flow rate is accounted for in the calculation of metabolic rates.

Optimal plethysmography guidelines

While SASSI-STAGG can handle many common errors and mishaps that can occur during a plethysmography experiment to minimize data loss, there are general guidelines that, if followed, provide optimal recordings for analysis in SASSI-STAGG. Users need not repeat experiments to abide by these guidelines. However, if protocols are updated to adapt to these considerations, then outcomes will most likely be far more accurate and reliable, and fewer experiments resulting in subpar recordings. We have summarized key suggestions here, but each are elaborated in the following sections:

  1. Plan experiments ahead of time to account for experimental caveats and appropriate group and post-hoc controls.

  2. Robust metadata collection will facilitate interrogation of covariates and unexpected influences (i.e., operator effect).

  3. Monitor experimental animals during the protocol to ensure appropriate data is collected for each challenge period.

  4. Breathing is responsive to emotional state. Habituate your animals to the experimental equipment and procedures to minimize distress-driven breathing outcomes.

  5. Ensure your gas analyzers are correctly calibrated with high purity (99.999%), gravimetrically filled tanks for the highest precision. Multi-point gas calibration will yield the best outcomes.

Adjustment of exposure protocol as needed

It is common practice for labs to develop a standard operating procedure for gas exposures in WBP. For example, 30 minutes of habituation, up to one hour of room air, 30 minutes of 5% CO2, and up to one hour of room air for challenge recovery, particularly for hypoxic challenges and the examination of the post-hypoxic response. While this standardization provides an ideal platform for ensuring consistency between recordings, unfortunately mice are not consistent. It is imperative that the operator performing experiments peruse the recorded sections of each condition of the experiment for quality breathing before proceeding to the next condition or section of the experiment. Some animals may take longer to reach a calm state, evident when movement artifacts are absent. This said, for some exposures, there may be a strict requirement for precise timing of the exposure, i.e., when primary hypoxic response is the measured outcome. In these cases, it is best to abort the run and return to that mouse at a later date. In either case, attention to quality of breathing and acclimation state of the animal is paramount when performing WBP experiments.

Habituation

While acclimation periods are most often included in a plethysmography run, habituation is less frequently included in experimental design. Rodents do not fully habituate to new environments within 30 minutes, particularly ones with significant differences from their home cages, e.g., size, foreign objects, and pressure. This lack of habituation results in increased noise as the animal explores its new housing as well as aberrant recording values related to the animal chewing on sensors and plugging gas intakes. To mitigate any contributions to noise derived from lack of habituation, we recommend habituating rodents once a day for at least 5 days where the last day of habituation is within a week of the plethysmography recordings(Martinez et al., 2019). Habituation should include anything performed during the actual experiment, e.g., temperature recording, injections, handling, and housing inside a plethysmograph chamber.

Gas concentration calibration curve

To calculate gas concentrations accurately, the voltages recorded during the calibration phases of the experiment are used to assign the voltage to a known concentration for each recording session. This allows downstream calculations to be more accurate within the recording and between recordings. Often, however, only room air and the challenge gas for a given experiment are recorded during these calibration sessions. This creates a unique situation where a completed calibration curve with two values is only possible for one type of gas output. For example, if the user runs room air and 5% CO2 balance room air calibration sessions for a hypercapnic exposure, then only the CO2 calibration curve will have two points, one at 0% (room air) and one at 5% (5% CO2 balance room air). Furthermore, the accuracy of the gases used in these challenges is not 100%. Two different gas mixtures with an expected oxygen concentration of 21% may have slightly different readings. To mitigate these issues, we recommend that users 1) record calibration sessions for two types of challenge gases in addition to room air and 2) do not change the “zero” set point following the first gas. This allows the software to gather two calibration curve points for both types of gas that are analyzed, O2 and CO2. It also prevents user-derived voltage changes that deviate from the expected curves and would influence concentration calculations later in the recording.

Signal Analysis Selection and Segmentation Integration – SASSI

The overall purpose of the waveform analysis program, called SASSI, is to import signal data and identify breaths within raw plethysmography data; calculate relevant respiratory parameters from those breaths; filter and group breaths into selections; combine metadata with the calculated respiratory parameters; and pass those data on to the statistics and graphing component of the program. This is accomplished using a variety of packages and series of operations that utilize the Python 3 programming language (packages summarized in Table 4A).

Table 4.

All libraries and packages used by A) SASSI, B) STAGG, and C) the GUI and subGUIs. Citations are included for each library/ package.

A All packages used by SASSI.
Library Application Citation
argparse This library collects arguments that are provided in the command line when executing the script so that they can be easily accessed as variables (Van Rossum & Drake, 2009)
csv This library assists with reading in data from .csv files such as the metadata and auto_criteria settings files (Van Rossum & Drake, 2009)
datetime This library provides a data structure for handling dates and time and applying mathematic operations to them – this is used as part of the logging system for tracking events through the execution of the script (Van Rossum & Drake, 2009)
logging This library aids in generating contextualized logging feedback to the console as well as a log file. (Van Rossum & Drake, 2009)
math This library provides additional functions for numerical operations and is currently used to aid in verifying if N/A values are present. (Van Rossum & Drake, 2009)
numpy This library includes several classes and functions that are used including arrays for storing values as well as mathematic and filter generating functions (Harris et al., 2020)
os This library provides access to functions for file i/o and filepath creation and parsing (Van Rossum & Drake, 2009)
pandas This library is used for its DataFrame class that is used to store several variables including the input signals and the detected breaths and their derived parameters. Several methods that act upon the DataFrame are utilized for filtering and applying calculations to the data. (McKinney, 2010)
re This library is used for regular expression parsing of text strings and is used for parsing MUID and PlyUID information (Van Rossum & Drake, 2009)
scipy This library provides functions used for signal processing including high and low pass filters that are used to reduce noise in the derived flow signal. Additionally, this library’s linregress function is used for the creation of calibration curves (O2 and CO2 concentrations vs. voltages). (Virtanen et al., 2020)
statistics This library is used to provide access to statistical functions such as median (Van Rossum & Drake, 2009)
sys This library is used to connect the systems stdout to logging functions, used for displaying logging messages in the console (Van Rossum & Drake, 2009)
tkinter This library is used to provide a minimal GUI when running the SASSI script separately from the GUI (Van Rossum & Drake, 2009)
B All packages used by STAGG.
Package Application Citation
argparser Allows for operation of the R module, STAGG, from the command line terminal (Shih, 2021)
data.table Reformatting of data tables in preparation for manipulations (Dowle & Srinivasan, 2021)
ggpubr Graphing and data visualization (Kassambara, 2020)
ggthemes Additional settings and configurations for graphing (Arnold, 2021)
kableExtra Builds common complex tables and manipulates table styles (Zhu, 2021)
lme4 Fits linear and generalized linear mixed-effects models (Bates et al., 2015)
lmerTest Provides p-values for linear mixed-effects models (Kuznetsova et al., 2017)
magrittr Improves readability and intuitiveness of code (Bache & Wickham, 2020)
multcomp Fits linear mixed-effects models and multiple comparisons (Hothorn et al., 2008)
openxlsx Reads, writes, and edits xlsx files (Schauberger & Walker, 2020)
pandoc Used for R markdown rendering (MacFarlane, 2006)
RColorBrewer Generates colors for graphing (Neuwirth, 2014)
reshape2 Used to transform data table formats for some optional graphs (Wickham, 2007)
rjson Allows import of .json formatted files (Couture‑Beil, 2018)
rmarkdown Produces html summary file with all .svg output files in one page (Xie et al., 2018, 2020; Allaire et al., 2021)
svglite Produces user-friendly editable .svg image files. (Wickham et al., 2022)
tidyselect Allows for verbiage consistency between packages (Henry & Wickham, 2020)
tidyverse Data management and formatting; include dplyr and ggplot2 packages (Wickham et al., 2019)
xtable Generates tables from functional outputs (Dahl et al., 2019)
C All packages used by the GUI.
Library Application Citation
numpy This library includes several classes and functions that are used including arrays for storing values as well as mathematic and filter generating functions (Harris et al., 2020)
pandas This library is used for its DataFrame class that is used to store several variables including the input signals and the detected breaths and their derived parameters. Several methods that act upon the DataFrame are utilized for filtering and applying calculations to the data. (McKinney, 2010)
pyodbc This library provides methods and utilities for accessing ODBC databases in Python. (Kleehammer, 2020)
PyQt5 This library is used for rendering graphics and GUI components like buttons and input boxes. It also manages processes that run parallel to the main GUI thread. (Riverbank Computing, 2021)
PyQt5-Qt5 This library is a subset of a Qt installation that is required by PyQt5. (Riverbank Computing, 2021)
PyQt5-sip This library provides Python bindings for C/C++ in support of PyQt5. (Riverbank Computing, 1998)
python-dateutil This library extends the Python native package datetime with extra utilities for working with dates and times (Niemeyer et al., 2003)
pytz This library provides Olson timezone calculations. (Bishop, 2008)
six This library provides smooth compatibility between libraries written for both Python 2 and Python 3. (Peterson, 2021)

Data import

Metadata are provided through an externally generated .csv file. Metadata represent three main categories: 1) periodic sampling during recording, 2) persistent animal metadata, and 3) initializing experimental data (Figure 2). Periodic sampling during the recording are values obtained by the researcher during the recording that are specific to a given animal. These data are typically intrasession drug administration or body temperature where continuous body temperature is not always gathered in plethysmography experiments. Persistent animal metadata are all the details about the animal being recorded that do not change (e.g., the genotype, age, date of birth, sex, group (control or experimental), etc.). Initializing experimental data refer to information about the apparatus and conditions on the day of the experiment that may play a role in the outcomes measured. Examples of initializing data include the identification number for the plethysmograph (if more than one is available in the lab), the gas tank (if tanks are changed out while completing all recordings for a given experiment), body weight, room temperature, and room barometric pressure. If an animal is run more than one time, for example in a longitudinal study, then there will be initializing data for each run, but the persistent animal metadata will remain the same for every run of that animal. An example .csv with all required fields for SASSI can be accessed in our User Manual website hosted on our project GitHub page. The inclusion of as many factors as possible in the metadata, such as experimenter, specific gas tanks, and rigs, allows for the software-based evaluation of potential recording artifacts that may impact outcomes, e.g., a particular tank or WBP rig having significant error in the recorded data.

Figure 2.

Figure 2.

Schematic of variables collected for a plethysmography experiment that can/ must be included in Breathe Easy for analysis.

Breath selection and filtering

SASSI works by identifying every breath in a .txt file, tab delimited, export of a WBP experiment followed by filtering of those breaths for desired qualities. The inputs to SASSI are all .txt files for an experiment and two or three configuration files, the number depends on the type of run the user chooses. For manual selections such as those exported from the signal viewer in LabChartPro, the format is tab delimited. All settings files (e.g., basic, manual, auto, and metadata) are comma delimited .txt files.

SASSI uses the two or three configuration files generated within the GUI to select and filter breaths including: 1) basic breathing parameters, 2) manual selections of breaths and 3) automated selection criteria. Basic breathing parameters are requirements that are used by SASSI to extract all breaths from the recording. The basic breathing parameters are settings that denote whether a peak found within the breathing waveform is a breath based on its characteristics, such as slope and duration, as well as using surrounding breaths to assess the presence of artifacts. A series of quality control steps are also implemented for the non-breathing signals such as chamber temperature and gas concentrations to identify data collection artifacts. If artifacts are present, then automated corrections may be applied and indicated in the log created by the run.

There are three ways SASSI-STAGG can be utilized to filter the identified breaths; manual selection, automated selection and filtering, and manual selection and automated filtering. The manual selection and automated selection criteria files inform SASSI on the three ways the user can run our program. A manual selection file includes breaths that are selected by the user from manual interrogation of the recorded plethysmography experiments. In this case, the user will perform most of the work of SASSI themselves and the Breathe Easy run will provide graphs and statistics. For automated selection, an automated selection criteria (autocriteria) file will be provided where the user determines what qualifications they deem appropriate for a breath to be considered calm, quiet breathing and which experimental conditions they would like to include in analysis. For example, the user could want only breaths if they are within a continuous group of at least 100 breaths that meet standards for calm, quiet breathing (based on the parameters of current and neighboring breaths) during the experimental conditions of room air and 5% CO2. To accurately calculate tidal volumes, the criteria for selecting the calibrated volume injections from room air and challenge gases may also be denoted in the autocriteria file. Default settings for a number of experimental paradigms come loaded as defaults in the automated settings subGUI for the user to select from. For manual and automated runs, the user provides their selections, and breathing based on both manual and automated filtering will be identified and included in the output. Calibration information from either manual or automated settings can be used, but if settings are provided in both configuration files, only the manual settings will be applied.

For any type of run, calibration periods must be identified for any sections where respiratory variables derived from Drorbaugh and Fenn, and Bartlett and Tenney formulae(Drorbaugh & Fenn, 1955; Bartlett & Tenney, 1970), which we call calibrated variables, are desired as an outcome. The current iteration of the software is limited in that it assumes linearity across volume and frequency when measuring breathing and utilizing a calibration procedure at a single volume and frequency for calibration injections. Linearity can be tested by using different calibration volumes each at differing frequencies. However, perfect linearity is rarely achieved in an open or flow through plethysmograph, if for no other reason than the pressure decay that occurs (Pappenheimer, 1977; Jacky, 1978; Frappell & Daniels, 1991). Variation in system design including tubing arrangements, temperature fluctuations, flow resistance throughout the system, and compliance in the tubing will result in variable impedance and requires acquisition of calibration data on each system separately. Future implementations of the software will aim to improve the accuracy for volume quantification by permitting calibration procedures at multiple volumes and frequencies as well as by implementing compensatory algorithms such as those outlined by Szewczak and Powell (Szewczak & Powell, 2003) among others.

If calibration injections are not provided, then only basic breathing variables (breath cycle duration, uncorrected tidal volume, ventilatory frequency) can be calculated. An example of both a manual selection file and an autocriteria file are provided in the User Manual website found in the GitHub repository for this project. If variables from the experimental or animal information metadata are not input by the user, then most have default alternatives that are implemented so meaningful data can still be produced. Generation of these settings files and choices that can be made are more explicitly outlined in the User Manual website.

Export to STAGG

Multiple SASSI outputs are available including the main .json output that is utilized by the STAGG portion of this software suite, a .csv output enumerating all detected breaths that can be used to audit breath identification performance, and a .csv output providing aggregate summary values. The .json files are tables where each row is one breath that includes basic breathing variables, calculated respiratory variables, persistent animal metadata, initializing experimental data, and periodically sampled data during the recording. Each column is a value from one of those categories of data. One .json file is generated per animal per recording. A log file is also produced that can be used to verify settings used during a run, observe if irregularities were present in the signal files, or determine if corrections were applied during the processing of the files. Once all files have been created, they are stored in the output folder specified in the GUI in automatically generated folders that include the date and time of the run. Only the .json files are passed along to STAGG.

Subprocesses of SASSI

SASSI performs all the filtering and selection of breaths as outlined above. However, there are a number of subprocesses that SASSI also performs during a typical run. Some of these processes are automatically performed and others are optional. It will be important for a user to familiarize themselves with the implications of each of these subprocesses as most are implemented to navigate a variety of common anomalies in plethysmography recordings. Also outlined is a more detailed explanation of how quality breathing is extracted from the raw waveforms.

Body temperature linearization

SASSI features a body temperature interpolation capability where body temperature measurements taken at the beginning, middle, and end of a session can be used to interpolate temperature values throughout the duration of the session for later use in calculating calibrated respiratory variables derived from Drorbaugh and Fenn, and Bartlett and Tenney formulae (Drorbaugh & Fenn, 1955; Bartlett & Tenney, 1970). Essentially, this function takes as many points as are available for temperature and creates a linear interpolator that connects those measurements throughout the recording. This artificially provides body temperature measurements for the entire recording rather than two to three distinct temperatures copied throughout the recording as is currently applied (Ray et al., 2011; Lusk et al., 2022). Currently, this interpolation cannot be turned off and is applied in all cases where temperature is not continuously recorded. In cases where there are known body temperature changes induced by the exposure gas, then it may be necessary to add additional points to the line for body temperature linearization. For example, in hypoxic exposures, we know that body temperature tends to decrease, followed by a return to baseline upon recovery in room air gas. In this paradigm, adding an additional body temperature measurement immediately following the hypoxic exposure would provide a more accurate estimate for body temperature during this exposure and, thus, a more accurate estimate of tidal volume, ventilation, and their corresponding values upon normalization to oxygen consumption and carbon dioxide production.

Signal spiking adjustments for temperature, flow, and gas concentration channels

It is not uncommon for abrupt, high magnitude spikes or short square wave pulses to sporadically contaminate the voltage signals on some of the recorded channels. SASSI can apply a correction to the signal when this error is detected. For chamber temperature, when a value outside of the range of 18–35°C is detected for an otherwise good breath, then the chamber temperature is replaced either 1) with an interpolated value from surrounding temperature values that fall within the correct range, or 2) with a default value, which is set to 30°C if no temperatures from surrounding breaths fall within the desired range. Both the range of acceptable temperatures and the default value used for replacement can be changed in the basic settings subGUI in the Rig Specifications tab.

It is also possible that the chamber temperature can exceed the recorded body temperature of the animal, which will lead to errors in values calculated using the equations from Drorbaugh and Fenn, and Bartlett and Tenney (Drorbaugh & Fenn, 1955; Bartlett & Tenney, 1970). This particular error can be a result of drifting chamber temperature voltages, or aberrant body temperature measurements. In either case, the user has the option to exclude any breaths where the chamber temperature for that breath exceeds the body temperature for that breath. These breaths are removed by default but can be included in future studies by editing the ‘High chamber temperatures inclusion’ variable in the Additional Settings tab of the automated settings subGUI.

For aberrant spiking in flow and gas concentration channels, the user can apply a smoothing filter, similar to flow smoothing filters commonly applied to WBP recordings. To apply the smoothing filter to flow and gas concentration channels, simply change the value for ‘Smoothing Filter’, which by default is 0=no smoothing on flow and 1=smoothing on flow, to “fg” which applies filters to both flow and gas concentration measurements. This setting can be accessed in the basic settings subGUI in the Breath Inclusion tab. Flow channel smoothing is a 0.1 Hz 2nd order high pass Butterworth filter with a 50 Hz 10th order low pass Bessel filter (Butterworth, 1930; Thomson, 1949). Gas channel smoothing is a 10 second rolling median filter.

Automatic identification, selection of breaths, and basic respiratory variables

Breaths are identified through transitions between inspiratory and expiratory flows that are above their respective and tunable thresholds. Flow signal used for this identification is calculated as a simple first derivative of the original respiratory waveform as collected by a differential pressure transducer used for whole-body plethysmography recordings. When a flow is identified as crossing the threshold such that breathing has transitioned between inspiration and expiration (or vice versa), then the point at which the waveform crosses zero immediately preceding the threshold crossing is used as the time when the transition occurred. This permits identification of timepoints defining inhalation and exhalation for each breath cycle.

An optional filter can be applied (or implemented in later steps for automated selection) that utilizes the breathing frequency of neighboring breaths (Equation 1) and disagreement in amplitude of inhaled and exhaled volumes (Equation 2) to select breaths. This was not used in the current study, as to permit usage of this filter in later steps to aid in automated selection of calm quiet breathing. A perfect alignment of inhaled and exhaled tidal volume amplitude may not be likely depending on the frequency response of the system used for data collection. However, users may adjust the threshold value based on empirical observations from their own data that distinguish between calm quiet breathing from breathing artifacts associated with non-calm breathing.

Equation 1. Percentage determination of neighboring breaths above a set breathing frequency where n is the instantaneous breath, w is ½ of the window surrounding the breath, F is the instantaneous breathing frequency, and X is the threshold set by the user (recommended as 500 for mouse breathing).

nwn1,n+1nwKKn1 if Fn>X;0 otherwise

Equation 2. Calculation of inhalation/ exhalation volume disagreement.

  ViVeVi/2+Ve/2

During the initial identification of breaths, several parameters are calculated for each breath, which are available as part of the output. Some have been identified as useful for automated selection criteria as well. The candidate breaths that are initially identified are then available for manual or automated selection. Manual selection will place all breaths contained within manually defined intervals within the output. Automated selection relies on a series of filters to refine the list of candidate breaths into the set of breaths contained within the largest continuous interval for each experimental condition as well as the subset of those breaths that met criteria for “calm, quiet breathing”.

Parameters that are defined for each breath include the duration of inhalation and exhalation, the total breath cycle duration, the instantaneous breathing rate, uncorrected inhaled and exhaled tidal volumes, peak inspiratory and expiratory flows, and scoring for featured breathing such as being an apnea or sigh (1=True, 0=False). Apneas can be defined by duration relative to neighboring breaths (at least twice as long recommended for mice) and minimum length of apnea (0.5 seconds recommended for mice), and sighs are defined as breaths with increased tidal volume relative to neighboring breaths (at least twice the amplitude is recommended for mice). These definitions can be changed based on user requirements, but these defaults have been used in previous work (Samaco et al., 2013; Huang et al., 2016; Ward et al., 2020; Collins et al., 2022).

Irregularity scores are also calculated for these basic respiratory parameters relative to the preceding breath. The calculation for irregularity scores is shown in Equation 3 where X is the value for which an irregularity score is being calculated and N is the number of the current breath for which the irregularity score is being calculated.

Equation 3. Irregularity score calculation (Telgkamp et al., 2002).

  XNXN1XN1x 100

To facilitate identification of calm quiet breathing, additional parameters are also calculated as Boolean True/ False values based on the underlying parameters value relative to the thresholds set in the autocriteria file.

Automated sectioning by comments

The user has the option of using comments inserted during the plethysmography recording as experimental landmarks that SASSI can use to divide the recording. The initial release of SASSI is designed to work with signal files exported from LabChart and can parse timestamps placed using the LabChart software. Any recording that is exported with comments in the style of the LabChart text file should also work given that comments in the autocriteria file match those found in the recording. To use comments that are already contained in the signal files, the user will include those as text strings in the autocriteria file, which is only required if the user desires automated selection of breaths from their signal files. Each comment within the autocriteria file is used to define the beginning of an experimental condition whereas the ending of an experimental condition is defined by the next comment in the LabChart file that is also listed in the autocriteria file, or by the end of the LabChart file if no suitable comment is found. The first division of experimental conditions is into “verified conditions” that meet the basic inclusion criteria based on their timestamps and gas concentrations. The user may specify offsets from beginning or ending of an experimental condition as well as minimum and maximum O2 and CO2 concentrations that can be used to refine the appropriate window for selection of breaths (i.e., to account for and exclude ramping gas concentrations during transition periods). These parameters are intended to be set by the user to define objective criteria for inclusion. Verified experimental conditions that pass the inclusion criteria for the condition are passed on to the next set of filters, verified breathing.

Calibrated variable calculation

Several respiratory parameters are automatically extracted from each identified breath whether the breath is assigned a corresponding calibration period or not. These include, but are not limited to, breath height, breath width, breath frequency, breath cycle duration, and uncorrected tidal volume. Drorbaugh and Fenn-derived Bartlett-Tenney corrections are used to calculate calibrated estimates for respiratory volumes and metabolism(Drorbaugh & Fenn, 1955; Bartlett & Tenney, 1970). To make those calculations, calibration injections must be included so accurate volumes of gases inhaled and exhaled, and baseline concentration voltages for oxygen and carbon dioxide concentrations can be calculated. Variables that are calculated in this nature include corrected tidal volume (VT), minute ventilation (V˙E), oxygen consumption (V˙O2), and ventilatory equivalents for oxygen (V˙E/V˙O2).

It should be noted that the nature of calculating these values introduces a division transform problem. This problem impacts the aggregate value calculated for an animal for a gas type or condition. For example, you can either calculate these variables using the average of recorded values for the animal during the gas exposure, or you can calculate these variables for each breath and average at the end. These methods will yield similar, yet slightly different results with their divergence typically increased as breathwise variation in breathing variable values increases. With STAGG, our statistical model is built on the analysis of individual breaths, with the ability to apply rank preserving transformations to the data to address non-normality in the statistical model. We utilize the individual observations for the statistical analysis performed in STAGG in order to account for the variability in individual measurements present in the observed data. Using the individual breaths for analysis also increases the statistical power of hypothesis tests relative to using aggregated mouse values. However, some users may prefer the traditional approach of derivation of calibrated variables from pre-aggregated components, and SASSI can provide an optional output file that makes these available.

Equations 4–9 elaborate the calculations made for each breath during a standard SASSI run.

Equation 4. Vapor pressure calculation where T is the temperature (Kelvin) of the air where vapor pressure is desired.

Vapor pressure=1.142+0.8017×T0.012×T2+0.0006468×T3

Equation 5. Corrected tidal volume (VT) calculation with Drorbaugh and Fenn-derived Bartlett-Tenney correction where A is voltage from the breath, B is average voltage of calibration injections, C is nominal volume of calibration injections, D is body temperature (C), E is room barometric pressure (mmHg), F is vapor pressure of the chamber, G is chamber temperature (C), and H is vapor pressure inside the mouse.

VT=AB×C × D+273.15 × EFD+273.15 × EFG+273.15 × EH

Equation 6. Minute ventilation calculation using corrected tidal volume (Equation 2).

V˙E= VT×VF

Equation 7. Oxygen consumption (V˙O2) calculation where oxygen in is taken from voltage during calibration, and flowrate is recorded as initializing experimental data in liters per minute (LPM) and converted to milliliters per minute (mLPM) in the equation. A is flow rate (LPM), B is oxygen concentration in (%), and C is oxygen concentration out (%).

V˙O2=A×1000×B100C100

Equation 8. Carbon dioxide production (V˙CO2) calculation where carbon dioxide in is taken from voltage during calibration, and flowrate is recorded as initializing experimental data in LPM and converted to mLPM in the equation. A is flow rate (LPM), B is carbon dioxide concentration out (%), and C is carbon dioxide concentration in (%).

V˙CO2=A×1000×B100C100

Equation 9. Ventilatory equivalents for oxygen (V˙E/V˙O2) calculation using minute ventilation (Equation 3) and oxygen consumption (Equation 4).

V˙EV˙O2= VT×VFV˙O2

STAtistics and Graph Generator – STAGG

The overall purpose of the STAGG platform of Breathe Easy is to statistically analyze and graph all of the desired variables for a given experiment. The flexibility coded into this component allow the user to analyze almost any desired respiratory variable along with any metadata external to the WBP recordings, like weight, age, or sex. Additional quantified data from paired behavioral assessments or even immunohistological cell counts can also be included. STAGG is comprised of a series of R scripts that process the data from SASSI. All packages can be found in Table 4B.

Data import and statistical analysis

First, the .json output of SASSI as well as the STAGG configuration files are loaded. Using the rjson package the data import script reads in each .json file one at a time and prints to the user the filename currently being imported as a progress bar. Once a .json is imported, it is added to the end of the previously imported .json to create a large DataTable containing all data from every file. STAGG requires 3 configuration files: 1) variable configuration, 2) graph configuration, and 3) other configuration. The variable configuration file outlines all the statistical settings for a given experiment where independent, dependent, and covariate variables are assigned. This file will also house permutations or settings specific to the variables that are set by the user in the STAGG settings subGUI, which includes things like transformations, minimums and maximums of the y-axis, and the generation of Poincaré plots. This file will also include “Alias” values that may be assigned by the user. For example, instead of “VO2pg” appearing on a graph, the user may instead prefer “Oxygen Consumption”. In this case, the user can reassign the name for “VO2pg” by replacing “VO2pg” in the “Alias” column with “Oxygen Consumption.” The graph configuration file contains instructions on how to plot the dependent variables selected on the graph. For example, if you want to see your dependent variables graphed by air condition and sex, then you would select air condition as xvar and sex as pointdodge. Finally, the other configuration file outlines optional graphs that are selected by the user. In optional graphs you can graph variables that may not be respiratory variables, but they are metadata that you want to plot for the experiment. You can also plot your respiratory variables with different settings than those in the primary model, which are selected in the graph settings. Settings for optional graphs follow the same guidelines as those for variable and graph configuration. Explicit instructions and more details for assigning values and making selections for these files are included in our User Manual website hosted on our GitHub page for this project.

Assignments for independent, dependent, and covariate variables are employed to fit separate linear mixed effects models from the data for each of the designated dependent variables using the lmer function from the lme4 package in R as well as any user-selected transformations for these variables. The independent variables are included in the model as fixed effects, along with an interaction variable which involves all designated independent variables. On the other hand, only the main effects for the covariates are included in the model as fixed effects. The unique mouse identification number (MUID) is included in the model as a random effect. Once these are set, a loop processes each of the dependent variables one at a time with the assigned independent and covariate factors. Results of the LMEM then undergo post hoc analysis with a Tukey’s honestly significant difference (HSD) test using the glht function from the multcomp package, in which pairwise differences between different interaction groups are tested for statistical significance. The outputs of this final test are compiled into a single table. This is then filtered to keep only biologically relevant significant results, i.e., only results which are both statistically significant and for which there is only a single difference amongst the combined group levels of the interaction variables. These results are used during the graph generation process to place asterisks that signify significant differences where appropriate. Full tabular results from the mixed effects model and the Tukey post-hoc tests are saved in an Excel spreadsheet where each dependent variable is given a tab in the sheet that holds results for each comparison made, and QQ and residual diagnostic plots for each individual mixed effects model are saved in the same StatResults folder.

For optional graphs, the primary LMEM model are used for statistics unless the response variable chosen either 1) is not included in that model or 2) is not a continuous variable. If the first case applies, then a new LMEM was run with the selected graphing options used in that model as independent variables. If second case applies, then an ordinary linear least squares regression ANOVA is used to generate statistics for that graph. Results of these statistical tests are saved in a separate statistics folder from the primary LMEM.

Graph generation

All dependent variables assigned by the user are graphed with statistical analysis results added to each. Settings from the GUI that are stored in the graph configuration file designate how the variables are plotted, i.e., which variables the dependent variables will be graphed against. Once these are assigned, scatterplots are generated via the ggplot function which show each dependent variable plotted against the selected independent variables or covariates at the individual mouse level. If there are significant results in the Tukey output, then asterisks are added to the appropriate group based on the location identified for each comparison and dotted lines are added to denote each group that is statistically significantly different from the group marked with an asterisk. After each component has been added to the graph, the graphs are saved as jpeg, svg, bmp, eps, pdf, png, or tiff files in the designated output folder. The preferred file format is selected by the user in the main GUI prior to running Breathe Easy.

Optional graphs

The final graph making script allows the user to choose any combination of independent and/ or dependent variables for plotting. This can include anything from body weight and body temperature, to plotting the dependent variables by different independent or dependent variables. This flexibility also opens the possibility for graphing results from behavioral studies and other tests performed outside of the plethysmography recording.

R Markdown and ReadMe

STAGG is completed by the run of an R markdown script that grabs all image files that are present in the selected output folder and compiles them into an .html page where the user can view all graphs generated in one place. This feature is ideal for the user because it allows perusal of data without needing to open multiple individual files.

In addition to an .html file with all figures produced, a ReadMe word document is produced that houses all of the settings the user selected for that particular run of STAGG. It eliminates all variables that were not assigned a role in the variable configuration file to make perusal easier for the user. This ReadMe file is ideal for keeping track of different runs of the software and taking notes on adjustments or changes that should be made from that particular run.

Graphical user interface – GUI

The GUI is a PyQt5-built program that integrates SASSI and STAGG into a portable desktop application. The GUI’s design follows the standard workflow of plethysmography analyses. Lateral panels display the paths of selected input for both modules, providing immediate feedback to the user on their selections. At the bottom of the GUI is a status display, where more explicit feedback as well as terminal output is posted for user review. On either side of the status display, the user can launch either module of Breathe Easy, or launch them sequentially. The GUI addresses 3 main issues with running SASSI-STAGG: 1) portability, 2) processing power/ speed, and 3) settings and formatting input.

Various subGUIs are used to provide specific input required by SASSI or STAGG. They are designed with the user in mind in that they prompt the user to input settings that are coded within SASSI-STAGG without needing to open, understand, or edit the code or configuration files directly. These subGUIs are easy to navigate and walk the user through all definitions of parameters required as well as recommended settings based on our experience. There are five total subGUIs: 1) basic SASSI settings, 2) manual SASSI settings, 3) automated SASSI settings, 4) metadata settings, and 5) STAGG settings. Explicit instructions on using the GUI and subGUIs and expectations for their inputs can be found on the User Manual website hosted in our GitHub repository.

Portability

A critical feature of the SASSI-STAGG application is its portability. The program employs a variety of languages, libraries, and packages from the Python and R universes. To accommodate novice users that are not skilled in setting up Python and R environments, a distributable pre-compiled package was created permitting installation as easy as downloading an archive file, unzipping the contents, and running the executable file contained within. Nuitka and R-Portable were utilized to create packaging that allows the user to run the application without needing to download or run Python or R. To facilitate this portability, the GUI creates default directories and identifies relative paths that allow the program to run independent of local environments. Currently, our packaged application is only available for computers running Windows due to lack of R-portable support on other operating systems. To mitigate this issue for users running Linux or MAC-OS computers, it is possible to use our application if the user separately installs R and creates the needed python environment to run our application from its python and R source code. We are in the process of creating a packaged MAC-OS compatible executable to launch the python components which will provide the user with a graphical interface to link to the separately installed R software.

Parallel processing

Another critical global feature of the GUI was its implementation of parallel processing. The application uses the subproccess library to spawn separate processes of SASSI for every signal file, allowing it to implement asynchronous execution for signal file interrogation. The user can choose the number of CPU cores they wish to devote to SASSI, which allows them to continue experiencing adequate performance while running other programs on the same computer. This parallel processing greatly reduces runtime, depending on configuration.

If parallel processing is not chosen by the user, then SASSI defaults to sequentially analyzing signal files with SASSI. On average, the analysis of a single signal file representing a 1.5 to 2 hour-long plethysmography run with SASSI takes two to three minutes on contemporary computer hardware. Running 16 signal files through SASSI one at a time would take 32–48 minutes. Running those same 16 signal files through SASSI using parallel processing, with at least eight processing cores, can finish the task within six minutes. On average, we see an 81.8% reduction in run time with parallel processing compared to serial processing. This is a dramatic contrast to the 50 minutes-3.15 hours spent by experts to manually select breaths from the same 16 files. Either option, parallel or sequential processing, is an improvement on the time and labor cost. It should be noted that although all cores can be sent instructions during the parallel processing procedure, with contemporary machines, there should be enough processing power to continue operating other applications while SASSI-STAGG is running. This said, depending on configuration, running other applications during SASSI-STAGG can potentially slow the processing time as the full processing power of each core would not be fully dedicated to the pipeline.

Currently, SASSI is the only module of the pipeline that utilizes this feature. Utilizing parallel processing for STAGG in its current form would not work or provide any benefit as there are many steps requiring sequential reading and writing throughout the STAGG module that make parallel processing impossible. However, once a dataset has been run through STAGG, one of the outputs is an R environment created just after all of the input .json files are read into R. If an R environment is selected as the start point for STAGG rather than all of the .json files, then there is an 82.2% reduction in run time. So, there is still an opportunity to increase the speed at which STAGG runs without parallel processing.

Sub-GUIs

Each subGUI discussed below provides specific input required by SASSI or STAGG. They are designed with the user in mind in that they prompt the user in layman terms to input settings that are coded within SASSI-STAGG in a less intuitive fashion. These subGUIs are easy to navigate and walk the user through all definitions of parameters required as well as recommended settings based on our experience. There are 5 total subGUIs: 1) basic SASSI settings, 2) manual SASSI settings, 3) automated SASSI settings, 4) metadata settings, and 5) STAGG settings. Not all the subGUIs are required for each type of run (i.e., manual vs automated). Each of the subGUIs produces a uniquely formatted .csv file that is sent to the appropriate program to provide the required instructions. Please see our User Manual website for more information and screenshots.

Basic SASSI settings subGUI

There are four groups of data and user definitions input in the basic parameters subGUI. These groups are separated into four tabs at the top of the subGUI with a fifth tab that summarizes all of the selections made in the other four tabs. Please see the User Manual website for more information on choosing settings in this subGUI.

Breath calling settings describe minimum quantitative guidelines for a peak in a recording to be considered a breath. This does not define the breath as calm, quiet breathing, rather just identifies that peak as breathing. Breath calling also defines featured breathing that may not pass quality breathing filters set later, like apneas and sighs. Defining these features allow the user to quantify these kinds of breaths separately from calm, quiet breathing. Rig specifications are where settings specific to your plethysmograph will need to be detailed for use in respiratory calculations from the raw waveform. Breath inclusion filters are very basic filters that can be set for an initial pass of exclusion of breaths. Generally, the defaults set here are recommended for a first pass through data. Output settings allows the user to indicate in which formats, other than the .json files, they would like the output of SASSI saved. Options here can be helpful for perusing the raw data in a spreadsheet application.

Manual SASSI settings subGUI

The manual settings subGUI streamlines the creation of the manual selection file needed for SASSI to analyze signal files with breaths that have been manually selected. The subGUI requires the user to select a folder containing the .txt files produced by exporting LabChart DataPad views. If a user is making selections with a software other than LabChart, then those selections need only be formatted to match the style and headings of DataPad selections found in LabChart for this subGUI to be used. Alternatively, they can directly generate a manual selections file using our example file provided within the documentation for the User Manual. These exported files are collated into a table presented in the subGUI window, allowing the user to review their selection of signal files. The user specifies the type of experimental condition applied during the plethysmography runs represented by the chosen signal files. Based on the user’s selection of experimental condition, the subGUI provides default settings for SASSI to use during its analyses. These settings are presented as a table in the subGUI that the user can review and edit, as needed. Upon merging the collated DataPad views with the settings chosen, the subGUI creates the manual selection file by assigning the appropriate settings to each row of the collated DataPad views. This table is then exported to SASSI for analysis. There are a number of assumptions made based on the file names for the recording files and exported DataPads. Please see the User Manual website for more information on how to export, guidelines for naming signal and settings files, and what options are available for manual selection.

Automated SASSI settings subGUI

The automated settings subGUI facilitates the creation and modification of the automated criteria (autocriteria) file needed for SASSI to analyze signal files by identifying breaths and features, filtering those breaths, and calculating output measures. The subGUI only asks the user to specify the experimental paradigm relevant to the signal files they wish to analyze. Their selection will populate the subGUI with values based on the default settings for that experimental condition. The user can also choose to load a previously made autocriteria file that will populate the subGUI with the settings defined therein. Alternatively, the user can derive all new settings based on comments pulled directly from the signal files. This option requires more work and should be done with caution and help from our User Manual. Automated selection settings vary depending on the section of the plethysmography run, so each setting will have several values, one for each of the sections. The user can review the values of all sections for each setting and edit those values as needed. These modified settings can then be saved as a new autocriteria file that will dictate how SASSI detects and filters the breaths in the signal files. Once generated, these settings are collated into a .csv file that is exported to SASSI. Suggested default settings can be found in a table hosted in our User Manual website.

Metadata settings subGUI

The metadata settings subGUI was designed to streamline the codification and reorganization of variables found in the metadata. This subGUI allows the user to rename variables, convert continuous variables into categorical variables, and create novel groups of variables. It modifies the metadata intended as SASSI input without altering the original format, instead creating a new file that can be used for subsequent SASSI analyses. Continuous variables can be difficult to visualize in a graph, so creating bins for ranges of values can allow the user to convert continuous variables into categorical variables for an easier to interpret graphical output, e.g., one month and two months instead of P30, P32, P59, and P64. Novel groups of variables allow the user to group animals together into meaningful biological groups for easier comparison even if the values for their grouping are different, e.g., Control and Experimental instead of Tg, WT, Het. Each of these permutations of the data are added to the existing data, which allows the user to re-load the same data files and perform different runs with the same dataset based on the exact question they would like to answer.

STAGG settings subGUI

The STAGG settings subGUI was designed to facilitate the configuration of statistical and graphical parameters used in STAGG. It presents the user with variables sourced from the metadata and analysis parameters provided as SASSI input as well as variables derived from SASSI output. This collation allows the user to assign statistical and graphical roles to variables of interest by designating them as independent, dependent, or covariate for statistical analyses and choosing how they are presented in the figures produced by STAGG. This interface also permits renaming of variables, allowing the user to create new naming conventions for a variable that they would like to be displayed on a graph, e.g., Ventilatory Frequency instead of VF. Please see our online User Manual for more information and help understanding some of the statistics employed in our software.

Machine requirements

General machine requirements to run SASSI-STAGG will vary based on the size of the user’s dataset and the desired statistical analyses. In general, we recommend twice as much RAM as the size of the full dataset, as this is used by the CPU to obtain model estimates in the statistical analysis. The user should have a minimum of 5GB disk space to download and install the Breathe Easy program and a minimum of 4 GB DDR3 RAM; we recommend 32 GB DDR3 RAM for analysis of larger data sets or models with larger design matrices (e.g., models including more than 2–3 interacting independent variables or involving independent variables with many categories). Outside of this recommendation, minimum and recommended operating systems and system architectures are described in Table 5.

Table 5.

Minimum and recommended machine requirements for running Breathe Easy.

Minimum Hardware Recommended Hardware
Operating System Windows 8 Windows 10+
System Architecture 64-bit x86 64-bit x86
Diskspace Minimum 5 GB Minimum 50 GB
RAM Minimum 4 GB Minimum 16 GB

Later STAGG development was largely affected by the demands of working with very large datasets. The size of the data table during importation, the size of the vectors produced during modeling, and the number of pairwise comparisons each represented bottlenecks in performance. STAGG loads the SASSI output into a single table that is actively maintained in RAM while the program is building it during importation. A crude indication of whether or not the computer running STAGG has sufficient RAM to handle the dataset is to compare that RAM to the collective size of the input files. A computer with 16 GB of installed RAM cannot create a table collating data from input files that collectively take up more than 16 GB of memory. There are two workarounds: 1) use a computer with more RAM, or 2) reduce the size of the input files by removing data that will not be used in the analysis. The removal of data could be removing a continuously recorded channel or metadata that is not used.

Similarly, sufficient RAM is needed to maintain the vector(s) created when STAGG models the data. This issue is again related to the size of the dataset with which STAGG is working. However, an additional factor at play is the number of comparisons made in the model. You may have insufficient RAM to maintain a few large vectors or many smaller vectors. Additionally, one of the libraries used to build the model caps the number of pairwise comparisons at 1,000. These related, but separate, issues were addressed by only modeling comparisons of interest, which are defined as differing at only one level of the independent variables being compared. This restriction has proven to be an acceptable and encompassing definition for biologically relevant comparisons and, therefore, an acceptable filter.

Results

Overview of software

Figure 3 provides an overview of our new modular, comprehensive, and automated respiratory analysis software pipeline, Breathe Easy, which is flexibly designed for use both by novices and experts. More detailed descriptions of each component of Breathe Easy can be found in the Methods section. To use Breathe Easy, we strongly recommend new users consult our User Manual website, which can be accessed through the GitHub repository (https://github.com/MolecularNeurobiology/Breathe_Easy). Briefly, the data and user-defined inputs for the pipeline are managed through the main Graphical User Interface (GUI), increasing accessibility to novices both in respiratory waveform analysis and coding (Fig. 3A). The overarching workflow outlined in Figure 3B for a typical multivariate respiratory experiment is managed through a series of subGUIs (workflows outlined in Fig. 3C) that allow the user to define inclusion and exclusion criteria for waveform features, parameters for the experimental design, and options for statistical analysis and graphical output. Screenshots of each subGUI are shown in Figure 4.

Figure 3.

Figure 3.

Overview of Breathe Easy components and workflow. A) Screenshot of the main GUI interface where the red numbering corresponds to displays shown in B-C. Text shown in white boxes are not what the user will see in the GUI, rather an example of what will populate those areas when using the GUI. B) A walkthrough of the full workflow of Breathe Easy with reference to each component in the GUI. C) Workflows and outputs of all of our subGUI interfaces.

Figure 4.

Figure 4.

Screenshots of each of out subGUIs that can be launched from our main GUI: A) automated settings, B) manual settings, C) basic settings, D) metadata configuration, and E) STAGG settings.

The raw plethysmography signal files, experimental metadata files, and user-defined filtering parameters (i.e., configuration files generated by the GUI based on user selections) are passed to the Breathing Analysis Selection and Segmentation for Plethysmography and Respiratory Observations (SASSI) module. The configuration files inform SASSI how the user defines a breath and exclusion criteria for artifacts like animal movement or flow obstructions. The application of these criteria is demonstrated in an example trace in Figure 5A. SASSI records instantaneous parameters for each identified breath that is selected for inclusion and compiles the output in a single .json file for each recording.

Figure 5.

Figure 5.

Demonstration of breath selection validation where A) shows selection process behind the scenes of SASSI where gray overhead dots show all breaths identified and the filled and empty dots below the trace show the decision to include (filled) or exclude (empty) each breath. B) Shows a comparison of breaths selected by SASSI to those manually selected by 3 experts from the same 16 files. C-D are uncorrected tidal volume and irregularity score of uncorrected tidal volume for breaths selected by SASSI vs manual selections by 3 experts. Error bars = standard deviation, *= p<0.05. Exact ‘n’ values and p-values can be found in the Statistics Summary Tables.

Following quality control, waveform filtering, and feature detection by SASSI, the data is sent to the STAtistics and Graph Generator (STAGG) module where statistics and graphs are generated based on user-defined settings. The user selects independent, dependent, and covariate variables for statistics; assignments for graphing respiratory variables; instructions for graphs other than respiratory variables selected by the user (e.g., body weight, body temperature, behavioral experiment outcomes, etc.); or different graphing settings for respiratory variables. The user also has 3 aesthetic options based on complexity of the dataset to display their statistics: 1) asterisks with dotted lines, 2) lines and ticks, and 3) none (Figure 6).

Figure 6.

Figure 6.

Demonstration of the different statistical graphing options available in Breathe Easy. For a simpler dataset, we show A) asterisks, B) lines and ticks, and C) no statistical markings for uncorrected tidal volume. For a more complex dataset, we show D) asterisks, E) lines and ticks, and F) no statistical markings tidal volume with a log10 transformation.

A successful run of Breathe Easy generates publication-ready figures with statistical significance marks added and tables of quantitative data representing the graphical outputs and showing statistical testing results. The output of this pipeline and required efforts to run the program represent a significantly improved and streamlined pipeline for plethysmography data analysis.

Validation

To validate the automated selection of breaths by SASSI, we compared the breaths selected by SASSI to those selected manually by experts in 16 representative traces from the 14 months timepoint in our Alzheimer’s dataset. Three experts (as defined by a record of peer-reviewed publication in respiratory waveform analysis with at least 8 years of experience collecting and analyzing breathing data(Sun et al., 2017; Ward et al., 2020; Lusk et al., 2022)) were engaged to select periods of calm, quiet breathing from regions of interest (i.e., stable gas concentrations for room air and challenge gas exposure) for analysis and comparison. The same files were then run through Breathe Easy using default parameters. Out of 391,424 total breaths identified in the 16 traces, 312,515 breaths were from desired sections of the recording (e.g., animal habituated and room air or fully equilibrated 5% CO2). Each expert selected, on average, 18,854.3 ± 6,678.7 breaths whereas SASSI selected 149,395 breaths from those same 16 files (Fig. 5B). 88.1% ± 3.8% of breaths selected by each of the experts were also selected by SASSI, showing high overlap between the two selection methods. In contrast, 11.9% ± 3.8% of breaths selected by experts were rejected by SASSI, where ~3% of this difference is due to experts selecting outside of the desired periods of interest, e.g., 6 minutes before the end of the condition instead of only selecting from the last 5 minutes. Thus, of breaths selected by experts as calm, quiet breathing from the correct periods of interest, less than 9% of breaths selected by experts were rejected by SASSI for not meeting quality standards.

There is concordance between SASSI and the experts and high discordance between excluded breaths and those included by SASSI and experts when considering the average of basic breathing variables calculated from breath selections as shown in Table 6 including breath cycle duration (A), ventilatory frequency (B), and uncorrected tidal volume (C, Fig. 5C). There is also a statistically significant difference in the irregularity scores for basic variables when comparing breaths selected by SASSI to those excluded by SASSI as shown for uncorrected tidal volume (Fig. 5D). We also see concordance between SASSI and the experts with the averages of calibrated respiratory variables as shown in Table 6 including peak inspiratory flow (D), peak expiratory flow (E), ventilatory equivalents of oxygen (F), corrected tidal volume (G), weight normalized ventilation (H), and oxygen consumption (I).

Table 6.

Average values for basic respiratory variables in validation study comparing SASSI automated breath selections to manual selections from 3 experts. Values present as mean ± standard deviation. Symbols following averages indicate significant differences between indicated groups. Reference group for identified significance are outlined below each table.

A Breath Cycle Duration (log10)

Condition Sex Group SASSI Excluded Expert1 Expert2 Expert3
Room Air Female Control −0.721 ± 0.0862 &^#@ −0.681 ± 0.0434 *^#@ −0.786 ± 0.126 *& −0.522 ± 0.126 *&@ −0.636 ± 0.119 *&#
Room Air Female Experimental −0.692 ± 0.0747 &^#@ −0.688 ± 0.0665 *^#@ −0.598 ± 0.153 *& −0.584 ± 0.0578 *& −0.704 ± 0.206 *&
Room Air Male Control −0.688 ± 0.0681 &^#@ −0.701 ± 0.0787 *^#@ −0.71 ± 0.0494 *&#@ −0.661 ± 0.225 *&^ −0.617 ± 0.111 *&^
Room Air Male Experimental −0.756 ± 0.14 &^#@ −0.685 ± 0.0556 *^@ −0.543 ± 0.14 *& −0.665 ± 0.117 * −0.64 ± 0.0431 *&
5% CO2 Female Control −0.759 ± 0.17 &^#@ −0.677 ± 0.0536 *^#@ −0.726 ± 0.0594 *& −0.629 ± 0.108 *& −0.58 ± 0.0811 *&
5% CO2 Female Experimental −0.707 ± 0.0647 &^#@ −0.673 ± 0.0679 *^# −0.607 ± 0.271 *& −0.589 ± 0.0977 *& −0.644 ± 0.043 *
5% CO2 Male Control −0.682 ± 0.0505 &^#@ −0.799 ± 0.132 *^#@ −0.707 ± 0.046 *& −0.585 ± 0.0583 *& −0.676 ± 0.1 *&
5% CO2 Male Experimental −0.703 ± 0.0554 &^#@ −0.717 ± 0.0533 * −0.534 ± 0.121 * −0.725 ± 0.199 * −0.665 ± 0.089 *
*

p < 0.05 vs. SASSI

&

p < 0.05 vs. Excluded

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

Biological Application

AD is a chronic, neurodegenerative disease with only palliative treatments currently available. As neurodegeneration worsens, key bodily functions including respiration begin to fail, which directly or indirectly leads to death. Sleep-disordered breathing (SDB) and aspiration pneumonia show strong associations with AD progression. There is a significantly increased prevalence of SDB in patients with dementia compared to the general population (71% vs. 55.7%)(Liguori et al., 2014, 2021; Macheda et al., 2019), and the E4 allele of apolipoprotein E, which is the strongest genetic risk factor for AD, is more highly expressed in patients with sleep apnea(Osorio et al., 2014). Continuous positive airway pressure for treatment of SDB in AD patients may improve symptoms(Ancoli‑Israel et al., 2008). Additionally, a leading cause of morbidity in AD and other neurodegenerative pathologies is aspiration pneumonia, which is hypothesized to result from disruption and degeneration of protective brainstem respiratory and swallowing networks (Wada et al., 2001; Kalia, 2003; Troche et al., 2011; Pitts, 2014; Fuzik et al., 2016; Suttrup & Warnecke, 2016; Yagi et al., 2017; Won et al., 2021). The summation of the evidence suggests that poor breathing function may play a role in AD onset, progression, and severity, and that AD progression may create a mutually destructive feedforward loop that disrupts respiratory networks.

To gain insight into respiratory function during AD progression, we used WBP on an inducible amyloid precursor protein (APP) forebrain mouse model(Jankowsky et al., 2005) to characterize metabolic and respiratory function over nearly two years. Along with room air breathing (21% O2/79% N2), hypercapnic (5% CO2/21% O2/74% N2) and hypoxic (10% O2/90% N2) respiratory homeostatic chemosensory functions were assayed. We focused on chemosensory respiratory reflexes as these neurological reflexes are often perturbed in SDB and other respiratory pathophysiologies.

A total of 633 recordings were completed in the 2-year longitudinal Alzheimer’s study following 55 mice across experimental and control genotypes. Beginning approximately 5 months after cessation of Doxycycline treatment, immediately following the first appearance of amyloid plaques, mice were recorded about every 2 months for 19 months. Timepoints reported in figures and text refer to total time off Doxycycline treatment. Not all mice met inclusion criteria for all timepoints; some died of age-related complications or recordings were not of sufficient quality. Because our analyses are completed on a breath-by-breath level rather than average values for each animal, we were able to include data from at least one period of the recording for 44 animals, resulting in 302 recordings for hypercapnic ventilatory response and 301 recordings for hypoxic ventilatory response, which are included in the data shown in Figures 69.

Figure 9.

Figure 9.

Apnea and sigh outcomes from our 2-year longitudinal Alzheimer’s study. A) Apnea and B) Sigh rates plotted by timepoint, group, condition, and sex. C) Apnea and D) Sigh rates plotted by timepoint, group, and condition with sex considered in the model as a covariate. Error bars = standard deviation, * = p<0.05. Exact ‘n’ values and p-values can be found in the Statistics Summary Tables.

No statistically significant trend in respiratory variables was observed in the Alzheimer’s group compared to age-matched controls over time. While some timepoints showed significant differences between experimental and control animals or within the same group over time, these differences presented as random with no obvious biological cause. A number of the significant differences were due to significant variability in one or more of the control groups: ventilatory frequency (VF) at 10 months in room air, and ventilation (V˙E) at 5 months in room air, 10 months in room air, 12 months in room air, 19 months in room air, 7 months in 5% CO2, and 10 months in 5% CO2 (Fig. 7AB, Table 7). There are also cases where just one or two of the control groups differ from the experimental group: VF at 5 months in 5% CO2 and 12 months in 5% CO2 (Fig. 7A, Table 7).

Figure 7.

Figure 7.

Respiratory outcomes from our 2-year longitudinal Alzheimer’s study. A) Ventilatory frequency and B) Ventilation plotted by timepoint, genotype, and condition with sex considered in the statistical model as a covariate. C) Ventilatory frequency, D) Tidal volume, and E) Ventilation plotted by timepoint, group, condition, and sex. Error bars = standard deviation, * = p<0.05. Exact ‘n’ values and p-values can be found in the Statistics Summary Tables.

Table 7.

Average values and p-values for select ventilatory frequency and ventilation comparisons showing control variation in the Alzheimer’s dataset. *Presented as average ± standard deviation (p=p-value* Comparison Group).

Respiratory Outcome (transform) Timepoint Condition Experimental* CaMK* tetO* WT*
Ventilatory Frequency (log10) 10 months Room Air 2.43±0.13 (0.00022*WT) 2.43±0.14 (0.00074*WT) 2.40±0.14 2.36±0.17
Ventilation (log10) 5 months Room Air 0.174±0.25 0.258±0.27 (p=0.00024*tetO) 0.129±0.29 0.198±0.27
Ventilation (log10) 10 months Room Air 0.260±0.26 (p=0.0010*tetO, p=0*WT) 0.289±0.27 (p=9.9e-5*tetO, p=0*WT) 0.140±0.26 (p=1.9e-11*WT) −0.113±0.42
Ventilation (log10) 12 months Room Air 0.291±0.26 0.202±0.27 (p=0.026*tetO) 0.319±0.21 0.235±0.22
Ventilation (log10) 19 months Room Air 0.120±0.26 (p=0.00035*caMK) −0.0190±0.28 0.0673±0.25 0.0283±0.27
Ventilation (log10) 7 months 5% CO 2 0.185±0.18 (p=3.6e-10*CaMK) 0.398±0.16 0.284±0.16 (p=0.010*CaMK) 0.275±0.14
Ventilation (log10) 10 months 5% CO 2 0.333±0.14 (p=2.0e-15*WT) 0.351±0.15 (p=0*WT) 0.299±0.13 (p=1.8e-9*WT) 0.0850±0.34
Ventilatory Frequency (log10) 5 months 5% CO 2 2.44±0.10 2.46±0.11 2.50±0.098 (p=0.036*Exp) 2.45±0.11
Ventilatory Frequency (log10) 12 months 5% CO 2 2.51±0.069 2.46±0.10 (p=0.010*Exp) 2.50±0.076 2.46±0.093 (p=0.0019*Exp)
*

Where Experimental = Tg102_tetO-APPswe/ind; TgCaMKIIα-tTA_LineB, CaMK = TgCaMKIIα-tTA_LineB, tetO = Tg102_tetO-APPswe/ind, and WT = no genetic manipulation.

Breathe Easy is designed so the user can easily assess the effects of grouped or individual levels within independent variables across multiple variables in an experiment to uncover key factors involved in differential outcomes. For example, in the case of VF at 5 months in 5% CO2, we can see that this difference is driven completely by the males, whereas the difference at 12 months in 5% CO2 is no longer present when the control groups are combined, and sex is added as a factor (Fig. 7C). Another example of deconvoluting outcomes can be found by examining individual levels for sex and genotype variables in VF and V˙E at 7 months in 5% CO2 where it becomes clear that the difference is driven by a change in VF, but not tidal volume, in the females leading to a significant difference in V˙E (Fig. 7CE). However, this difference in V˙E seems chiefly caused by the CaMKII-tTA control group when the control groups are split, and sex is removed as a factor. This is in line with previous findings indicating phenotypes with the CaMKII-tTA driver to be commonplace(Jankowsky & Zheng, 2017).

Upon further investigation into metabolism, we see similar trends for seemingly random significant differences across a number of comparisons that do not have an obvious biological cause; these significant results are also not sustained when independent variables are grouped differently (Fig. 8A,C). However, we do note significant differences at 7 months as we saw with V˙E and VF. In 5% CO2 there is a significant difference between experimental and control animals in ventilatory equivalents of oxygen (V˙E/V˙O2), but not oxygen consumption (V˙O2) (Fig. 8AB). This difference persists in both males and females for V˙E/V˙O2 whereas no difference is noted in V˙O2 (Fig. 8CD). This suggests, combined with the data shown in Fig. 7B,E, that this difference is driven by a change in V˙E and not V˙O2. Further, although the difference in V˙E was not significant in males (Fig. 7E), there is significance in males for V˙E/V˙O2. This suggests that a trend in V˙E for males may be present, but not significant, and becomes clear when normalized to metabolic demand.

Figure 8.

Figure 8.

Respiratory and metabolic outcomes from our 2-year longitudinal Alzheimer’s study. A) Oxygen consumption and B) Ventilatory equivalents of oxygen plotted by timepoint, genotype, and condition with sex considered in the statistical model as a covariate. C) Oxygen consumption and D) Ventilatory equivalents of oxygen plotted by timepoint, group, condition, and sex. Error bars = standard deviation, * = p<0.05. Exact ‘n’ values and p-values can be found in the Statistics Summary Tables.

On the other hand, in 10% O2, we see no differences in V˙E at 7 months (Fig. 7B,E), but we do see significant differences in V˙O2 and V˙E/V˙O2 even when the data is split by sex (Fig. 8), which suggests this difference is driven by a change in V˙O2. Interestingly, we see a bimodal distribution of the V˙O2 response where males show a decrease and females show an increase. Despite this differential response, the change in V˙E/V˙O2 between control and experimental animals still holds when sex is combined (Fig. 8B).

We also report the featured breathing phenotypes for apneas and sighs in this study where we do not observe any meaningful changes in sigh rate that would be indicative of a phenotype driven by this Alzheimer’s model (Fig. 9B,D). For apnea rate, there are a number of significant differences between controls and experimental animals in females under 5% CO2 when split by sex (Fig. 9A), but none of those changes remain significant when sex is removed (Fig. 9C). There is also a difference in experimental animals between 5 and 7 months, and 5 and 16 months in 5% CO2 (Fig. 9A), however this difference is also gone when sex is removed and instead we see a difference in control animals between 7 and 12 months in 5% CO2 (Fig. 9C).

Additionally, we can easily test for contributions of known related variables like weight and age. No significant difference between experimental and control animals was seen in the number of animals included or weight at the time of their recordings (Fig. 10A, Table 3) aside from the expected significant weight gain with age. There was a significant difference in age between experimental and control animals at 12 months (E=experimental average±standard error, C=control average±standard error, p-value) (E= 400.1±14.0, C= 393.6±12.4, p=0.0073), 14 months (E= 459.3±10.8, C= 452.8±12.3, p=0.021), 16 months (E= 518.1±8.67, C= 510.6±9.52, p=0.022), and 19 months (E= 601.2±6.46, C= 593.3±9.4, p=0.022) (Fig. 10B). Although the ages are significantly different, we expect that this significance is derived from the order by which the animals were run through our experimental paradigm. Unfortunately, it was not considered that the genotypes and groups should be randomly recorded at each of the timepoints, so the animals were run by group in the same order for each timepoint. This led to a significant, but not biologically relevant difference in age at the final timepoints. This hypothesis is supported by the consistent decrease in variation in age for both groups as age increases.

Figure 10.

Figure 10.

A) Body weight and B) Age of animals used in our longitudinal Alzheimer’s study plotted by timepoint and group. Error bars = standard deviation, * = p<0.05. Exact ‘n’ values and p-values can be found in the Statistics Summary Tables.

Discussion

Here we present a novel software platform that we suggest is an improvement upon current analysis methods for WBP data. While commercial options for partially automated analyses are available, they are closed source and offer little flexibility for breath identification and filtering, and subsequent analysis (Table 2). While several approaches to analyzing differing aspects of rodent respiratory data have been published in one form or another(Wilson, 2016; Sun et al., 2020; Hsieh et al., 2020; Sunshine & Fuller, 2021; Khurram et al., 2022), no available software suite, to our knowledge, has the capability of filtering for the typical standard of calm, quiet breathing in rodent plethysmography experiments, i.e., automatically filters movement and other waveform artifacts. In addition to programmatic benefits outlined in Table 2, Breathe Easy is open source, free to academic researchers, and offers a novel, raw data-to-figure pipeline.

Conventional approaches to identification and selection of breaths for analysis fall into two extremes: manual selections or inclusion of all breaths. The SASSI module of Breathe Easy provides its users with the ability to identify all breaths within a recording and provide a filtered selection of breaths that generally agree with expert selections of “calm, quiet” breathing. The automated selections provided by SASSI have the advantage of being impartial and tractably defined by user-adjustable settings that can easily be shared across multiple users, eliminating the problem of inter-rater reliability when analyzing large datasets. Additionally, SASSI avoids using the breathing rate of individual breaths as a selection filter. Instead, it uses a sliding window that incorporates neighboring breaths to exclude breaths proximal to very high frequency breathing, such as bouts of sniffing, while permitting inclusion of a larger range of likely “calm, quiet” breaths throughout the full duration of the recording. This range is lost with manual selection as experimenters are prone to selecting the slowest and steadiest breathing intervals. SASSI also integrates information across other data channels to aid in defining the filtering criteria for automated selections. SASSI additionally has the capability of providing indirect calorimetry respiratory outcomes, which are essential as a means of controlling for the effects of metabolic demand on breathing outcomes. Limitations of the current implementation relate to the initial candidate breath identification settings as the same settings are used for candidate breath detection for the full recording and for all recordings analyzed as a batch. This may require a user to refine and repeat their analysis in cases where marked differences in respiratory flow are present across animals, or across portions of the recording. This kind of refinement would most likely be necessary for analysis of WBP data from other rodents, like rats. That said, simple modifications of the selection parameters would allow the user to re-define these settings to meet requirements for most any dataset involving respiratory waveforms.

Breathe Easy’s STAGG module is also unique in the application of appropriate statistical testing for respiratory datasets. While many articles in the field apply ANOVA or t-tests, these tests are mostly inappropriate for the structure of most data collected in plethysmography experiments, which often involve repeated measurements on the same subjects, particularly for chemosensory assays, and naturally involve multiple variables that influence breathing but are not always considered, e.g., age, sex, and experimenter. Many other works utilize a repeated measures ANOVA to perform statistical analyses; while this method does account for repeated measurements, it has more stringent assumptions compared to the LMEM including having an equal number of repeats, does not allow for the inclusion of continuous covariates in the model, and can not be modified in the future for analysis of non-continuous response variables (Krueger & Tian, 2004). Thus, our application of linear mixed effects models (LMEM) with Tukey post hoc analysis represents a needed standardization for analysis in the field and, arguably, a significant improvement in statistical analysis, as the model accounts for repeated measures and accommodates more complex experimental designs. Several assumptions are made in the application of mixed effects models that should be addressed by the researcher before interpreting results. We use a standard LMEM model for all dependent variables, in which it is assumed that the random effect coefficients and the overall model residuals follow normal distributions. Cases where the residuals are not independent and identically distributed indicate potential invalidity of the model. While strict adherence to assumptions with an LMEM is not always required(Schielzeth et al., 2020), we do provide output to address these assumptions. QQ and residual plots are generated for each dependent variable. Based on these, the user can choose to include models with transformed dependent variables to address adherence to these assumptions. Transformations that are currently available include log10, natural log, and square root.

While the LMEM is widely used to analyze data in biological contexts, the standard model we use in STAGG for all designated dependent variables has some potential limitations. One issue is that the standard LMEM is only applicable for continuous dependent variables. If a user wanted to analyze categorical or discrete dependent variables, this would require the usage of a generalized linear mixed effects model, which is currently not implemented in STAGG. In cases of optional graphs where this would be appropriate, an ordinary linear least squares regression model is used instead of the primary LMEM model. Additionally, the standard LMEM model does not account for any possible dependencies between subjects or any correlations between observations outside of what is accounted for in the random effects. For example, there could be autocorrelation effects from a single session or possible additional repeated measures effects from the experimental design, which the current implementation does not handle. However, it is possible for the user to run STAGG to test these dependencies by selecting rig, experimental date, time of day, etc. from the imported metadata as dependent variables to test for significant contributions.

Breathe Easy was validated against the typical standard of manual selection of recordings (Fig. 5). The concordance between SASSI selected breaths and all three experts demonstrate the ability of the software to select breathing that an expert would deem calm, quiet breathing. Furthermore, as sample size increases, we know the accuracy of estimated mean becomes closer to the true mean. We see a significant difference between breaths selected by SASSI and breaths excluded by SASSI; therefore, the accuracy of SASSI is not just due to an increase in sample size and is instead due to the quality of selected breaths. We also see significant variation between experts, which is not uncommon in respiratory experiments where reproducibility both in values and units reported is questionable (Table 1). This problem can easily be solved by adoption of Breathe Easy across labs performing WBP experiments to ensure consistent data analysis.

The high level of variance in agreement between experts, and between experts and SASSI-selected breaths is encouraging as it supports and provides evidence for the argument of increased consistency when using Breathe Easy compared to manual selection. It is not uncommon in all fields for experiments to have unreliable reproducibility. For respiratory studies, this can stem from many factors. Many recorded variables that are often overlooked could play a role in measured outcomes like time of day, age, sex, strain, method of body temperature measurement, volume of the chamber, etc.. Additionally, the method and approach to collecting plethysmography data, i.e., differences in plethysmograph design and approach, can also contribute to variability. To mitigate issues surrounding plethysmograph design we have listed optimal plethysmography guidelines in the methods section so they can be used as a companion to our software. Importantly, all of these variables, as long as they are recorded by the researcher, can easily be tested for associations using Breathe Easy. While these variables may affect outcomes, our software allows for more rigorous experimental design and interrogation of the data. Together, this should lead to greater reproducibility within and across labs. These data show that even with a blinded group of experts there is variation in the manual selections that lead to significantly different results. Furthermore, while SASSI-selected breaths are significantly different in many cases from expert-selected breaths, over 88% of the breaths selected by experts were also selected by SASSI. This suggests that because expert manual selection results in such a low sampling frequency of the data (~10% of the data selected by SASSI), the variation between experts, and variation between experts and SASSI is actually a result of the method of manual selection missing data leading to undersampling. On the whole experts agree with SASSI as to what is calm, quiet eupneic breathing, but not all of the calm, quiet eupneic breaths are part of the expert selections on the individual level. Together this supports the hypothesis that Breathe Easy demonstrates exquisite accuracy not solely because of the large number of breaths analyzed, but rather that SASSI’s filtering criteria extracts a variety of calm, quiet eupneic breathing. Such representative variation present during calm, quiet breathing is exceedingly difficult to capture with manual selection.

Overall, the biological application of this software to our longitudinal Alzheimer’s study failed to reveal a consistent change over time, which suggests that forebrain APP expression alone is not a likely significant driver of respiratory dysfunction. This finding is somewhat surprising as forebrain streptozotocin AD models can drive changes in breathing rate (Ebel et al., 2017; Brown et al., 2019). Further, it is well appreciated that forebrain injury from trauma or stroke can have lasting effects on breathing (Koutsoukou et al., 2016; Seiler et al., 2019) and that forebrain seizures are capable of perturbing breathing (Dlouhy et al., 2015).

Of the results that were significant, we suspect that contributions of phenotypes previously reported in the control mice for this animal model to play a significant role (Han et al., 2012; Jankowsky & Zheng, 2017). Given the variability of the control groups and the lack of any biologically significant development at 7 months off doxycycline, the differences reported at 7 months are most likely outliers. On the whole, there does not seem to be consistent evidence to support a direct link between the forebrain pathology of this model and pathological respiratory phenotypes.

Many additional features and outputs are being developed for future versions of Breathe Easy. The version presented here is a complete pipeline with calculation and analysis for the most frequently reported basic and calibrated respiratory variables. Future versions will aim to provide additional flexibility with user-defined breathing to include coughing and vocalization. We have also derived iterations of Breathe Easy for exploratory and data mining functions to investigate the dynamics of the waveform itself for predictive and diagnostic features. A component of these dynamics will include analysis of first and second derivatives of each component of the waveform for analysis of active vs. passive breathing and early/ late inspiration and expiration. Using principal component analysis (PCA) of individual breath signals, it will be possible to interrogate traces for unknown features and phenomena that inform respiratory outcomes. Many groups are currently investigating the application of this analysis to raw waveforms, but the input to their analyses is limited to all breaths and noise from a recording or hand-picked sections of data (Sunshine & Fuller, 2021; Janke et al., 2022). Additionally, several exciting avenues of breathing research are opening up that would benefit from modules to extract and merge other physiological signals such as ECG, EEG, EMG, and video for automated generation of ethograms describing an animal’s state as Breathe Easy does not currently segregate breaths by state. This said, the user could use video during the experiment to define state and use those times as selection criteria within Breathe Easy. However, this is not ideal for high throughput analysis, and we are working to add additional modules that can automate state detection.

Supplementary Material

Supinfo2
Supinfo1

B Ventilatory Frequency (sqrt)

Condition Sex Group SASSI Excluded Expert1 Expert2 Expert3
Room Air Female Control 17.8 ± 1.8 &^#@ 17 ± 0.868 *^#@ 19.3 ± 2.59 *& 14.3 ± 2.14 *&@ 16.3 ± 2.51 *&#
Room Air Female Experimental 17.2 ± 1.45 &^#@ 17.2 ± 1.42 *^#@ 15.7 ± 2.77 *& 15.2 ± 1.04 *& 17.9 ± 3.84 *&
Room Air Male Control 17.1 ± 1.4 &^#@ 17.4 ± 1.64 *^#@ 17.6 ± 1.07 *&#@ 17.1 ± 3.98 *&^ 15.9 ± 2.26 *&^
Room Air Male Experimental 18.7 ± 2.72 &^#@ 17.1 ± 1.2 *^@ 14.7 ± 2.45 *&# 16.8 ± 2.29 *^ 16.2 ± 0.808 *&
5% CO2 Female Control 18.9 ± 3.25 &^#@ 16.9 ± 1.08 *^#@ 17.9 ± 1.32 *& 16.1 ± 2.07 *& 15.2 ± 1.55 *&
5% CO2 Female Experimental 17.5 ± 1.36 &^#@ 16.9 ± 1.49 *^# 16.3 ± 4.5 *&@ 15.4 ± 1.81 *&@ 16.3 ± 0.809 *^#
5% CO2 Male Control 17 ± 1.03 &^#@ 19.6 ± 2.8 *^#@ 17.5 ± 0.982 *& 15.2 ± 1.04 *& 17 ± 2.02 *&
5% CO2 Male Experimental 17.4 ± 1.18 &^#@ 17.7 ± 1.15 * 14.5 ± 2.05 * 18.3 ± 3.78 * 16.8 ± 1.81 *
*

p < 0.05 vs. SASSI

&

p < 0.05 vs. Excluded

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

C Uncorrected Tidal Volume (log10)

Condition Sex Group SASSI Excluded Expert1 Expert2 Expert3
Room Air Female Control −2.89 ± 0.0692 &^ −2.89 ± 0.081 *#@ −2.79 ± 0.16 *#@ −3.04 ± 0.127 &^ −3.07 ± 0.16 &^
Room Air Female Experimental −2.89 ± 0.0825 ^#@ −2.82 ± 0.111 ^#@ −3 ± 0.118 *& −3.05 ± 0.0686 *& −2.94 ± 0.21 *&
Room Air Male Control −2.9 ± 0.0686 &^#@ −2.83 ± 0.094 *^#@ −2.82 ± 0.0742 *&@ −2.99 ± 0.265 *&@ −3.03 ± 0.155 *&^#
Room Air Male Experimental −2.86 ± 0.183 &^#@ −2.81 ± 0.0994 *^#@ −3.04 ± 0.101 *&# −2.96 ± 0.157 *&^@ −2.99 ± 0.0281 *&#
5% CO2 Female Control −2.9 ± 0.15 &^ −2.87 ± 0.1 * −2.82 ± 0.0773 * −2.98 ± 0.0931 −3.05 ± 0.12
5% CO2 Female Experimental −2.88 ± 0.0783 −2.83 ± 0.119 −3.06 ± 0.241 −3.03 ± 0.103 −3 ± 0.0364
5% CO2 Male Control −2.88 ± 0.0546 &^@ −2.81 ± 0.174 * −2.81 ± 0.101 *# −3.01 ± 0.0838 ^ −2.93 ± 0.147 *
5% CO2 Male Experimental −2.86 ± 0.0696 &^@ −2.82 ± 0.0579 * −3.01 ± 0.094 * −2.99 ± 0.243 −2.97 ± 0.13 *
*

p < 0.05 vs. SASSI

&

p < 0.05 vs. Excluded

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

D Peak Inspiratory Flow (log10)

Condition Sex Group SASSI Excluded Expert1 Expert2 Expert3
Room Air Female Control −1.63 ± 0.114 &^#@ −1.71 ± 0.111 *^#@ −1.48 ± 0.144 *& −1.88 ± 0.143 *&@ −1.9 ± 0.157 *&#
Room Air Female Experimental −1.66 ± 0.0891 &^#@ −1.63 ± 0.128 *^#@ −1.74 ± 0.178 *& −1.91 ± 0.106 *& −1.55 ± 0.219 *&
Room Air Male Control −1.69 ± 0.109 &^#@ −1.62 ± 0.132 *^#@ −1.58 ± 0.0764 *&# −1.63 ± 0.258 *&^ −1.88 ± 0.166 *&
Room Air Male Experimental −1.55 ± 0.187 &^#@ −1.63 ± 0.102 *^#@ −1.85 ± 0.149 *&# −1.74 ± 0.228 *&^@ −1.82 ± 0.0589 *&#
5% CO2 Female Control −1.54 ± 0.158 &^#@ −1.69 ± 0.121 *^#@ −1.58 ± 0.0874 *&# −1.76 ± 0.173 *&^@ −1.93 ± 0.119 *&#
5% CO2 Female Experimental −1.66 ± 0.127 &^#@ −1.65 ± 0.118 *^# −1.65 ± 0.231 *&@ −1.86 ± 0.144 *&@ −1.82 ± 0.064 *^#
5% CO2 Male Control −1.69 ± 0.0861 &^#@ −1.48 ± 0.184 *^#@ −1.58 ± 0.0927 *& −1.87 ± 0.125 *& −1.68 ± 0.231 *&
5% CO2 Male Experimental −1.65 ± 0.0903 &^#@ −1.58 ± 0.0775 * −1.85 ± 0.119 * −1.63 ± 0.25 * −1.77 ± 0.149 *
*

p < 0.05 vs. SASSI

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

E Peak Expiratory Flow (sqrt)

Condition Sex Group SASSI Expert1 Expert2 Expert3
Room Air Female Control 2.69 ± 0.311 3.37 ± 0.45 ^#@ 2.28 ± 0.408 & 2.72 ± 0.632 &
Room Air Female Experimental 2.8 ± 0.305 3.53 ± 0.342 ^#@ 2.43 ± 0.317 & 3.14 ± 0.712 &
Room Air Male Control 2.66 ± 0.268 3.31 ± 0.397 ^#@ 2.11 ± 0.324 &# 2.3 ± 0.299 &^@
Room Air Male Experimental 2.67 ± 0.231 3.54 ± 0.413 ^#@ 2.19 ± 0.185 & 2.69 ± 0.164 &
5% CO2 Female Control 2.68 ± 0.31 3.35 ± 0.453 ^#@ 2.1 ± 0.312 & 2.37 ± 0.517 &
5% CO2 Female Experimental 2.79 ± 0.219 3.59 ± 0.456 ^# 2.24 ± 0.202 &@ 2.66 ± 0.182 &
5% CO2 Male Control 2.64 ± 0.278 3.33 ± 0.404 ^ 2.06 ± 0.351 &#@ 2.43 ± 0.505 ^
5% CO2 Male Experimental 2.71 ± 0.233 3.48 ± 0.461 2.21 ± 0.284 2.64 ± 0.363 @
*

p < 0.05 vs. SASSI

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

F Ventilatory Equivalents of Oxygen (log10)

Condition Sex Group SASSI Expert1 Expert2 Expert3
Room Air Female Control 1.7 ± 0.133 1.7 ± 0.106 ^#@ 1.4 ± 0.182 &@ 1.49 ± 0.177 &
Room Air Female Experimental 1.62 ± 0.0994 1.71 ± 0.109 ^#@ 1.39 ± 0.146 & 1.58 ± 0.162 &
Room Air Male Control 1.68 ± 0.109 1.66 ± 0.0969 ^#@ 1.34 ± 0.136 & 1.38 ± 0.137 &
Room Air Male Experimental 1.59 ± 0.0935 1.72 ± 0.127 ^#@ 1.34 ± 0.0792 & 1.51 ± 0.0908 &
5% CO2 Female Control 1.69 ± 0.11 1.68 ± 0.103 ^#@ 1.35 ± 0.174 & 1.38 ± 0.136 &
5% CO2 Female Experimental 1.62 ± 0.0874 1.7 ± 0.13 ^# 1.32 ± 0.0841 &@ 1.49 ± 0.102 &@
5% CO2 Male Control 1.66 ± 0.131 1.68 ± 0.0917 ^#@ 1.35 ± 0.162 & 1.37 ± 0.162 &
5% CO2 Male Experimental 1.59 ± 0.121 1.72 ± 0.136 # 1.34 ± 0.124 @ 1.48 ± 0.172 &@
*

p < 0.05 vs. SASSI

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

G Corrected Tidal Volume (sqrt)

Condition Sex Group SASSI Expert1 Expert2 Expert3
Room Air Female Control 0.0834 ± 0.00855 0.0849 ± 0.00862 ^#@ 0.0741 ± 0.0114 &#@ 0.0747 ± 0.0134 &^
Room Air Female Experimental 0.0758 ± 0.00554 0.0896 ± 0.00693 ^#@ 0.0675 ± 0.00685 & 0.0866 ± 0.0162 &
Room Air Male Control 0.0836 ± 0.00799 0.084 ± 0.00898 ^#@ 0.07 ± 0.00907 &@ 0.0658 ± 0.00769 &@
Room Air Male Experimental 0.0741 ± 0.00648 0.0906 ± 0.00951 ^#@ 0.0628 ± 0.00394 &# 0.0768 ± 0.00346 &^@
5% CO2 Female Control 0.0826 ± 0.00767 0.0859 ± 0.00912 ^@ 0.0708 ± 0.00906 & 0.0645 ± 0.00897
5% CO2 Female Experimental 0.0758 ± 0.00508 0.0901 ± 0.00859 ^ 0.0637 ± 0.00429 &@ 0.0763 ± 0.00436
5% CO2 Male Control 0.0815 ± 0.0104 0.0873 ± 0.0097 ^# 0.0694 ± 0.00966 &#@ 0.0672 ± 0.00995 &^@
5% CO2 Male Experimental 0.0753 ± 0.00935 0.092 ± 0.0131 ^# 0.0629 ± 0.0057 &# 0.0778 ± 0.0148 &^@
*

p < 0.05 vs. SASSI

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

H Ventilation per gram Body Weight (log10)

Condition Sex Group SASSI Expert1 Expert2 Expert3
Room Air Female Control 0.336 ± 0.124 0.332 ± 0.129 ^#@ 0.106 ± 0.225 &# 0.177 ± 0.231 &^@
Room Air Female Experimental 0.243 ± 0.102 0.397 ± 0.0882 ^#@ 0.0622 ± 0.157 & 0.315 ± 0.225 &
Room Air Male Control 0.3 ± 0.0947 0.294 ± 0.116 ^#@ −0.00405 ± 0.183 &# −0.0111 ± 0.126 &^@
Room Air Male Experimental 0.196 ± 0.0855 0.398 ± 0.101 ^#@ −0.044 ± 0.0923 &# 0.188 ± 0.0593 &^@
5% CO2 Female Control 0.296 ± 0.106 0.329 ± 0.12 ^#@ 0.0144 ± 0.21 & 0.0223 ± 0.149 &
5% CO2 Female Experimental 0.238 ± 0.0713 0.409 ± 0.106 ^# −0.0307 ± 0.0938 &@ 0.186 ± 0.0682 &@
5% CO2 Male Control 0.285 ± 0.126 0.34 ± 0.108 ^@ −0.0251 ± 0.183 &# 0.039 ± 0.161 ^
5% CO2 Male Experimental 0.204 ± 0.111 0.405 ± 0.128 −0.0399 ± 0.127 0.214 ± 0.171
*

p < 0.05 vs. SASSI

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

I Oxygen Consumption (log10)

Condition Sex Group SASSI Expert1 Expert2 Expert3
Room Air Female Control −1.36 ± 0.0893 −1.37 ± 0.11 ^#@ −1.29 ± 0.127 &# −1.31 ± 0.146 &^@
Room Air Female Experimental −1.38 ± 0.0748 −1.31 ± 0.0593 ^#@ −1.32 ± 0.0721 & −1.26 ± 0.125 &
Room Air Male Control −1.38 ± 0.0741 −1.37 ± 0.0984 ^#@ −1.34 ± 0.121 &#@ −1.39 ± 0.112 &^@
Room Air Male Experimental −1.4 ± 0.0733 −1.32 ± 0.0548 ^@ −1.38 ± 0.0552 &# −1.32 ± 0.0576 ^@
5% CO2 Female Control −1.4 ± 0.0779 −1.35 ± 0.108 ^#@ −1.34 ± 0.122 &#@ −1.36 ± 0.121 &^@
5% CO2 Female Experimental −1.38 ± 0.0606 −1.29 ± 0.0558 ^ −1.35 ± 0.0583 & −1.31 ± 0.0598
5% CO2 Male Control −1.38 ± 0.0582 −1.34 ± 0.0951 ^ −1.37 ± 0.0865 &# −1.33 ± 0.134 ^@
5% CO2 Male Experimental −1.38 ± 0.0817 −1.32 ± 0.0398 ^#@ −1.38 ± 0.0663 &@ −1.26 ± 0.0544 &@
*

p < 0.05 vs. SASSI

^

p < 0.05 vs. Expert 1

#

p < 0.05 vs. Expert 2

@

p < 0.05 vs. Expert 3

Key Points.

  • Respiratory dysfunction is a common endpoint for disability and mortality in many disorders throughout life.

  • Whole body plethysmography in rodents represents a high face-value method for measuring respiratory outcomes in rodent models of these diseases and disorders.

  • Analysis of key respiratory variables remains hindered by manual annotation and analysis that leads to low throughput results that often exclude a majority of the recorded data.

  • Here we present a software suite, Breathe Easy, that automates the process of data selection from raw recordings derived from plethysmography experiments and the analysis of these data into operative outcomes and publication-worthy graphs with statistics.

  • We validate Breathe Easy with a terabyte-scale Alzheimer’s dataset that examines the effects of forebrain pathology on respiratory function over 2 years of degeneration.

Acknowledgements

We thank N. Hayden, J. Sun, R. Anderson, V. Martinez, F. Saldana, and H. Shi for technical support. Funding from NIH and NSF. The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.

Funding

S. Lusk: NIH R01HL130249, 44617-S4 (Diversity Supplement) and NIH 1F32HL160073-01A1

G. Allen: NSF NeuroNex-1707400

J. Jankowsky: NIH RF1 AG054160

R. Ray: NIH R01 HL130249, NIH R01 HL161142, McNair Foundation

This project was supported by the Mouse Metabolism and Phenotyping Core at Baylor College of Medicine which is subsidized through Baylor College of Medicine’s Advanced Technology Cores and through funding from NIH (UM1HG006348, R01DK114356)

Biographies

graphic file with name nihms-1928211-b0001.gif

Savannah Lusk is a postdoctoral fellow at Baylor College of Medicine. She earned a dual B.S. in Chemistry and Biology with a concentration in Biomedical Health from Longwood University and her Ph.D. in Experimental and Molecular Medicine from Dartmouth College. Her research focuses on understanding the etiology of SIDS and uncovering potential therapeutic interventions.

graphic file with name nihms-1928211-b0002.gif

Christopher Ward serves as the Director of the Mouse Metabolism and Phenotyping Core at Baylor College of Medicine. Chris obtained a B.S. in Biotechnology (Ferris State University) and a Ph.D. in Molecular and Human Genetics (Baylor College of Medicine) and works to refine analyses of behavior and physiology data.

graphic file with name nihms-1928211-b0003.gif

Andersen Chang is a postdoctoral associate at Baylor College of Medicine. He received his Ph.D. from Rice University in Statistics in 2022. His research focuses on developing statistical machine learning methods for analysis of neuroscience and biomedical data.

Footnotes

Additional Information

Competing Interests

The authors declare no competing interests.

Data Availability Statement

All of our source code as well as a downloadable launcher for the GUI is available in our public GitHub repository (https://github.com/MolecularNeurobiology/Breathe_Easy). Within the ReadMe are multiple links to our online documentation (Sphinx and GitHub Pages). We highly suggest first time users to install and launch the GUI, then walk through the vignette provided that includes an example dataset and settings files.

Raw data for our complete Alzheimer’s dataset is too large to store on Zenodo, which is our default data hosting site. However, we will share the data via cloud-based services upon request. Please send correspondence to Russell Ray at Russell.ray@bcm.edu for requesting access.

References

  1. Alhaddad H, Cisternino S, Saubamea B, Schlatter J, Chiadmi F, Risède P, Smirnova M, Cochois-Guégan V, Tournier N, Baud FJ, & Mégarbane B (2013). Gender and strain contributions to the variability of buprenorphine-related respiratory toxicity in mice. Toxicology, 305, 99–108. 10.1016/j.tox.2013.01.013. [DOI] [PubMed] [Google Scholar]
  2. Allaire JJ, Xie Y, McPherson J, Luraschi J, Ushey K, Atkins A, Wickham H, Cheng J, Chang W, & Iannone R (2021). rmarkdown: Dynamic Documents for R R.
  3. Ancoli-Israel S, Palmer BW, Cooke JR, Corey-Bloom J, Fiorentino L, Natarajan L, Liu L, Ayalon L, He F, & Loredo JS (2008). Cognitive effects of treating obstructive sleep apnea in Alzheimer’s disease: a randomized controlled study. J Am Geriatr Soc, 56(11), 2076–2081. 10.1111/j.1532-5415.2008.01934.x. [DOI] [PMC free article] [PubMed] [Google Scholar]
  4. Arnold JB (2021). ggthemes: Extra Themes, Scales, and Geoms for “ggplot2.” R.
  5. Bache SM & Wickham H (2020). magrittr: A Forward-Pipe Operator for R R.
  6. Bartlett D & Tenney SM (1970). Control of breathing in experimental anemia. Respir Physiol, 10(3), 384–395. 10.1016/0034-5687(70)90056-3. [DOI] [PubMed] [Google Scholar]
  7. Bassi M, Giusti H, Leite CM, Anselmo-Franci JA, do Carmo JM, da Silva AA, Hall JE, Colombari E, & Glass ML (2012). Central leptin replacement enhances chemorespiratory responses in leptin-deficient mice independent of changes in body weight. Pflugers Arch, 464(2), 145–153. 10.1007/s00424-012-1111-1. [DOI] [PMC free article] [PubMed] [Google Scholar]
  8. Bates D, Maechler M, Bolker B, & Walker S (2015). Fitting Linear Mixed-Effects Models Using lme4. J Stat Softw, 67(1), 1–48. [Google Scholar]
  9. Bishop S (2008). pytz PyPI. [Google Scholar]
  10. Brown AG, Thapa M, Hooker JW, & Ostrowski TD (2019). Impaired chemoreflex correlates with decreased c-Fos in respiratory brainstem centers of the streptozotocin-induced Alzheimer’s disease rat model. Exp Neurol, 311, 285–292. 10.1016/j.expneurol.2018.10.012. [DOI] [PubMed] [Google Scholar]
  11. Butterworth S (1930). On the theory of filter amplifiers. Wireless Engineer,.
  12. Collins BE, Merritt JK, Erickson KR, & Neul JL (2022). Safety and efficacy of genetic MECP2 supplementation in the R294X mouse model of Rett syndrome. Genes Brain Behav, 21(1), e12739. 10.1111/gbb.12739. [DOI] [PMC free article] [PubMed] [Google Scholar]
  13. Couture-Beil A (2018). rjson: JSON for R R.
  14. Dahl DB, Scott D, Roosen C, Magnusson A, & Swinton J (2019). xtable: Export Tables to LaTeX or HTML R.
  15. Dauger S, Nsegbe E, Vardon G, Gaultier C, & Gallego J (1998). The effects of restraint on ventilatory responses to hypercapnia and hypoxia in adult mice. Respir Physiol, 112(2), 215–225. 10.1016/s0034-5687(98)00027-9. [DOI] [PubMed] [Google Scholar]
  16. Dlouhy BJ, Gehlbach BK, Kreple CJ, Kawasaki H, Oya H, Buzza C, Granner MA, Welsh MJ, Howard MA, Wemmie JA, & Richerson GB (2015). Breathing Inhibited When Seizures Spread to the Amygdala and upon Amygdala Stimulation. J Neurosci, 35(28), 10281–10289. 10.1523/JNEUROSCI.0888-15.2015. [DOI] [PMC free article] [PubMed] [Google Scholar]
  17. Dowle M & Srinivasan A (2021). data.table: Extension of “data.frame.” R.
  18. Drorbaugh JE & Fenn WO (1955). A barometric method for measuring ventilation in newborn infants. Pediatrics, 16(1), 81–87. 10.1542/peds.16.1.81. [DOI] [PubMed] [Google Scholar]
  19. Ebel DL, Torkilsen CG, & Ostrowski TD (2017). Blunted Respiratory Responses in the Streptozotocin-Induced Alzheimer’s Disease Rat Model. J Alzheimers Dis, 56(3), 1197–1211. 10.3233/JAD-160974. [DOI] [PubMed] [Google Scholar]
  20. Fechtner L, El Ali M, Sattar A, Moore M, & Strohl KP (2015). Fentanyl effects on breath generation in C57BL/6J and A/J mouse strains. Respir Physiol Neurobiol, 215, 20–29. 10.1016/j.resp.2015.04.011. [DOI] [PMC free article] [PubMed] [Google Scholar]
  21. Frappell PB & Daniels CB (1991). Temperature effects on ventilation and metabolism in the lizard, Ctenophorus nuchalis. Respir Physiol, 86(2), 257–270. 10.1016/0034-5687(91)90085-w. [DOI] [PubMed] [Google Scholar]
  22. Fuzik J, Zeisel A, Máté Z, Calvigioni D, Yanagawa Y, Szabó G, Linnarsson S, & Harkany T (2016). Integration of electrophysiological recordings with single-cell RNA-seq data identifies neuronal subtypes. Nat Biotechnol, 34(2), 175–183. 10.1038/nbt.3443. [DOI] [PMC free article] [PubMed] [Google Scholar]
  23. Gestreau C, Heitzmann D, Thomas J, Dubreuil V, Bandulik S, Reichold M, Bendahhou S, Pierson P, Sterner C, Peyronnet-Roux J, Benfriha C, Tegtmeier I, Ehnes H, Georgieff M, Lesage F, Brunet J-F, Goridis C, Warth R, & Barhanin J (2010). Task2 potassium channels set central respiratory CO2 and O2 sensitivity. Proc Natl Acad Sci USA, 107(5), 2325–2330. 10.1073/pnas.0910059107. [DOI] [PMC free article] [PubMed] [Google Scholar]
  24. Goineau S, Rompion S, Guillaume P, & Picard S (2010). Ventilatory function assessment in safety pharmacology: optimization of rodent studies using normocapnic or hypercapnic conditions. Toxicol Appl Pharmacol, 247(3), 191–197. 10.1016/j.taap.2010.06.012. [DOI] [PubMed] [Google Scholar]
  25. Grundy D (2015). Principles and standards for reporting animal experiments in The Journal of Physiology and Experimental Physiology. Exp Physiol, 100(7), 755–758. 10.1113/EP085299. [DOI] [PubMed] [Google Scholar]
  26. Han HJ, Allen CC, Buchovecky CM, Yetman MJ, Born HA, Marin MA, Rodgers SP, Song BJ, Lu H-C, Justice MJ, Probst FJ, & Jankowsky JL (2012). Strain background influences neurotoxicity and behavioral abnormalities in mice expressing the tetracycline transactivator. J Neurosci, 32(31), 10574–10586. 10.1523/JNEUROSCI.0893-12.2012. [DOI] [PMC free article] [PubMed] [Google Scholar]
  27. Harris CR, Millman KJ, van der Walt SJ, Gommers R, Virtanen P, Cournapeau D, Wieser E, Taylor J, Berg S, Smith NJ, Kern R, Picus M, Hoyer S, van Kerkwijk MH, Brett M, Haldane A, Del Río JF, Wiebe M, Peterson P, … Oliphant TE (2020). Array programming with NumPy. Nature, 585(7825), 357–362. 10.1038/s41586-020-2649-2. [DOI] [PMC free article] [PubMed] [Google Scholar]
  28. Henry L & Wickham H (2020). tidyselect: Select from a Set of Strings R.
  29. Hill R, Dewey WL, Kelly E, & Henderson G (2018). Oxycodone-induced tolerance to respiratory depression: reversal by ethanol, pregabalin and protein kinase C inhibition. Br J Pharmacol, 175(12), 2492–2503. 10.1111/bph.14219. [DOI] [PMC free article] [PubMed] [Google Scholar]
  30. Hothorn T, Bretz F, & Westfall P (2008). Simultaneous Inference in General Parametric Models. Biom J, 50(3), 346–363. [DOI] [PubMed] [Google Scholar]
  31. Hsieh Y-H, Litvin DG, Zaylor AR, Nethery DE, Dick TE, & Jacono FJ (2020). Brainstem inflammation modulates the ventilatory pattern and its variability after acute lung injury in rodents. J Physiol (Lond), 598(13), 2791–2811. 10.1113/JP279177. [DOI] [PubMed] [Google Scholar]
  32. Huang T-W, Kochukov MY, Ward CS, Merritt J, Thomas K, Nguyen T, Arenkiel BR, & Neul JL (2016). Progressive changes in a distributed neural circuit underlie breathing abnormalities in mice lacking mecp2. J Neurosci, 36(20), 5572–5586. 10.1523/JNEUROSCI.2330-15.2016. [DOI] [PMC free article] [PubMed] [Google Scholar]
  33. Humphrey CM, Hooker JW, Thapa M, Wilcox MJ, Ostrowski D, & Ostrowski TD (2023). Synaptic loss and gliosis in the nucleus tractus solitarii with streptozotocin-induced Alzheimer’s disease. Brain Res, 1801, 148202. 10.1016/j.brainres.2022.148202. [DOI] [PMC free article] [PubMed] [Google Scholar]
  34. Jacky JP (1978). A plethysmograph for long-term measurements of ventilation in unrestrained animals. J Appl Physiol, 45(4), 644–647. 10.1152/jappl.1978.45.4.644. [DOI] [PubMed] [Google Scholar]
  35. Janke E, Zhang M, Ryu SE, Schreck MR, Moberly AH, Luo W, Ding L, Wesson DW, & Ma M (2022). Machine Learning to Classify the Emotional States of Mice from Respiration. SSRN Journal,; DOI: 10.2139/ssrn.4106834. [DOI] [Google Scholar]
  36. Jankowsky JL, Slunt HH, Gonzales V, Savonenko AV, Wen JC, Jenkins NA, Copeland NG, Younkin LH, Lester HA, Younkin SG, & Borchelt DR (2005). Persistent amyloidosis following suppression of Abeta production in a transgenic model of Alzheimer disease. PLoS Med, 2(12), e355. 10.1371/journal.pmed.0020355. [DOI] [PMC free article] [PubMed] [Google Scholar]
  37. Jankowsky JL & Zheng H (2017). Practical considerations for choosing a mouse model of Alzheimer’s disease. Mol Neurodegener, 12(1), 89. 10.1186/s13024-017-0231-7. [DOI] [PMC free article] [PubMed] [Google Scholar]
  38. Kalia M (2003). Dysphagia and aspiration pneumonia in patients with Alzheimer’s disease. Metab Clin Exp, 52(10 Suppl 2), 36–38. 10.1016/s0026-0495(03)00300-7. [DOI] [PubMed] [Google Scholar]
  39. Kassambara A (2020). ggpubr: “ggplot2” Based Publication Ready Plots R.
  40. Khurram OU, Gransee HM, Sieck GC, & Mantilla CB (2022). Automated evaluation of respiratory signals to provide insight into respiratory drive. Respir Physiol Neurobiol, 300, 103872. 10.1016/j.resp.2022.103872. [DOI] [PMC free article] [PubMed] [Google Scholar]
  41. Kleehammer M (2020). pyodbc GitHub, Inc. [Google Scholar]
  42. Koutsoukou A, Katsiari M, Orfanos SE, Kotanidou A, Daganou M, Kyriakopoulou M, Koulouris NG, & Rovina N (2016). Respiratory mechanics in brain injury: A review. World J Crit Care Med, 5(1), 65–73. 10.5492/wjccm.v5.i1.65. [DOI] [PMC free article] [PubMed] [Google Scholar]
  43. Krueger C & Tian L (2004). A comparison of the general linear mixed model and repeated measures ANOVA using a dataset with multiple missing data points. Biol Res Nurs, 6(2), 151–157. 10.1177/1099800404267682. [DOI] [PubMed] [Google Scholar]
  44. Kuznetsova A, Brockhoff PB, & Christensen RHB (2017). lmerTest Package: Tests in Linear Mixed Effects Models. Journal of Statistical Sofware, 82(13), 1–26. [Google Scholar]
  45. Lewanowitsch T, Miller JH, & Irvine RJ (2006). Reversal of morphine, methadone and heroin induced effects in mice by naloxone methiodide. Life Sci, 78(7), 682–688. 10.1016/j.lfs.2005.05.062. [DOI] [PubMed] [Google Scholar]
  46. Liguori C, Maestri M, Spanetta M, Placidi F, Bonanni E, Mercuri NB, & Guarnieri B (2021). Sleep-disordered breathing and the risk of Alzheimer’s disease. Sleep Med Rev, 55, 101375. 10.1016/j.smrv.2020.101375. [DOI] [PubMed] [Google Scholar]
  47. Liguori C, Romigi A, Nuccetelli M, Zannino S, Sancesario G, Martorana A, Albanese M, Mercuri NB, Izzi F, Bernardini S, Nitti A, Sancesario GM, Sica F, Marciani MG, & Placidi F (2014). Orexinergic system dysregulation, sleep impairment, and cognitive decline in Alzheimer disease. JAMA Neurol, 71(12), 1498–1505. 10.1001/jamaneurol.2014.2510. [DOI] [PubMed] [Google Scholar]
  48. Lusk S, McKinney A, Hunt P, Fahey P, Patel J, Chang A, Sun J, Martinez V, Zhu P, Egbert J, Allen G, Jiang X, Arenkiel B, Tolias A, Costa-Mattioli M, & Ray R (2022). A CRISPR toolbox for generating intersectional genetic mouse models for functional, molecular, and anatomical circuit mapping. BMC Biol,. [DOI] [PMC free article] [PubMed] [Google Scholar]
  49. MacFarlane J (2006). Pandoc
  50. Macheda T, Roberts K, Lyons DN, Higgins E, Ritter KJ, Lin A-L, Alilain WJ, & Bachstetter AD (2019). Chronic Intermittent Hypoxia Induces Robust Astrogliosis in an Alzheimer’s Disease-Relevant Mouse Model. Neuroscience, 398, 55–63. 10.1016/j.neuroscience.2018.11.040. [DOI] [PMC free article] [PubMed] [Google Scholar]
  51. Martinez VK, Saldana-Morales F, Sun JJ, Zhu PJ, Costa-Mattioli M, & Ray RS (2019). Off-Target Effects of Clozapine-N-Oxide on the Chemosensory Reflex Are Masked by High Stress Levels. Front Physiol, 10, 521. 10.3389/fphys.2019.00521. [DOI] [PMC free article] [PubMed] [Google Scholar]
  52. Mayford M, Bach ME, Huang YY, Wang L, Hawkins RD, & Kandel ER (1996). Control of memory formation through regulated expression of a CaMKII transgene. Science, 274(5293), 1678–1683. 10.1126/science.274.5293.1678. [DOI] [PubMed] [Google Scholar]
  53. McKinney W (2010). Data Structures for Statistical Computing in Python
  54. Neuwirth E (2014). RColorBrewer: ColorBrewer Palettes R.
  55. Niemeyer G, Pieviläinen T, de Leeuw Y, & Ganssle P (2003). python-dateutil GitHub. Available at: https://github.com/dateutil/dateutil [Accessed August 11, 2022]. [Google Scholar]
  56. Osorio RS, Ayappa I, Mantua J, Gumb T, Varga A, Mooney AM, Burschtin OE, Taxin Z, During E, Spector N, Biagioni M, Pirraglia E, Lau H, Zetterberg H, Blennow K, Lu S-E, Mosconi L, Glodzik L, Rapoport DM, & de Leon MJ (2014). Interaction between sleep-disordered breathing and apolipoprotein E genotype on cerebrospinal fluid biomarkers for Alzheimer’s disease in cognitively normal elderly individuals. Neurobiol Aging, 35(6), 1318–1324. 10.1016/j.neurobiolaging.2013.12.030. [DOI] [PMC free article] [PubMed] [Google Scholar]
  57. Pappenheimer JR (1977). Sleep and respiration of rats during hypoxia. J Physiol (Lond), 266(1), 191–207. 10.1113/jphysiol.1977.sp011763. [DOI] [PMC free article] [PubMed] [Google Scholar]
  58. Peterson B (2021). six PyPI. Available at: https://pypi.org/project/six/ [Accessed August 11, 2022]. [Google Scholar]
  59. Pitts T (2014). Airway protective mechanisms. Lung, 192(1), 27–31. 10.1007/s00408-013-9540-y. [DOI] [PMC free article] [PubMed] [Google Scholar]
  60. Ray RS, Corcoran AE, Brust RD, Kim JC, Richerson GB, Nattie E, & Dymecki SM (2011). Impaired respiratory and body temperature control upon acute serotonergic neuron inhibition. Science, 333(6042), 637–642. 10.1126/science.1205295. [DOI] [PMC free article] [PubMed] [Google Scholar]
  61. Riverbank Computing (1998). PyQt-sip Riverbank Computing. Available at: https://www.riverbankcomputing.com/software/sip [Accessed August 11, 2022]. [Google Scholar]
  62. Riverbank Computing (2021). PyQt Riverbank Computing. [Google Scholar]
  63. Romer SH, Seedle K, Turner SM, Li J, Baccei ML, & Crone SA (2017). Accessory respiratory muscles enhance ventilation in ALS model mice and are activated by excitatory V2a neurons. Exp Neurol, 287(Pt 2), 192–204. 10.1016/j.expneurol.2016.05.033. [DOI] [PubMed] [Google Scholar]
  64. Samaco RC, McGraw CM, Ward CS, Sun Y, Neul JL, & Zoghbi HY (2013). Female Mecp2(+/−) mice display robust behavioral deficits on two different genetic backgrounds providing a framework for pre-clinical studies. Hum Mol Genet, 22(1), 96–109. 10.1093/hmg/dds406. [DOI] [PMC free article] [PubMed] [Google Scholar]
  65. Schauberger P & Walker A (2020). openxlsx: Read, Write and Edit xlsx Files R.
  66. Schielzeth H, Dingemanse NJ, Nakagawa S, Westneat DF, Allegue H, Teplitsky C, Réale D, Dochtermann Ned.A., Garamszegi LZ, & Araya‐Ajoy YG (2020). Robustness of linear mixed‐effects models to violations of distributional assumptions. Methods Ecol Evol,; DOI: 10.1111/2041-210X.13434. [DOI] [Google Scholar]
  67. Seiler A, Camilo M, Korostovtseva L, Haynes AG, Brill A-K, Horvath T, Egger M, & Bassetti CL (2019). Prevalence of sleep-disordered breathing after stroke and TIA: A meta-analysis. Neurology, 92(7), e648–e654. 10.1212/WNL.0000000000006904. [DOI] [PubMed] [Google Scholar]
  68. Shih DJH (2021). argparser: Comman-Line Argument Parser R.
  69. Silva TM, Borniger JC, Alves MJ, Alzate Correa D, Zhao J, Fadda P, Toland AE, Takakura AC, Moreira TS, Czeisler CM, & Otero JJ (2021). Machine learning approaches reveal subtle differences in breathing and sleep fragmentation in Phox2b-derived astrocytes ablated mice. J Neurophysiol, 125(4), 1164–1179. 10.1152/jn.00155.2020. [DOI] [PMC free article] [PubMed] [Google Scholar]
  70. Spinieli RL, Ben Musa R, Kielhofner J, Cornelius-Green J, & Cummings KJ (2021). Orexin contributes to eupnea within a critical period of postnatal development. Am J Physiol Regul Integr Comp Physiol, 321(4), R558–R571. 10.1152/ajpregu.00156.2021. [DOI] [PMC free article] [PubMed] [Google Scholar]
  71. Sunshine MD & Fuller DD (2021). Automated classification of whole body plethysmography waveforms to quantify breathing patterns. Front Physiol, 12, 690265. 10.3389/fphys.2021.690265. [DOI] [PMC free article] [PubMed] [Google Scholar]
  72. Sun JJ, Huang T-W, Neul JL, & Ray RS (2017). Embryonic hindbrain patterning genes delineate distinct cardio-respiratory and metabolic homeostatic populations in the adult. Sci Rep, 7(1), 9117. 10.1038/s41598-017-08810-4. [DOI] [PMC free article] [PubMed] [Google Scholar]
  73. Sun Y, Guo F, Kaffashi F, Jacono FJ, DeGeorgia M, & Loparo KA (2020). INSMA: An integrated system for multimodal data acquisition and analysis in the intensive care unit. J Biomed Inform, 106, 103434. 10.1016/j.jbi.2020.103434. [DOI] [PMC free article] [PubMed] [Google Scholar]
  74. Suttrup I & Warnecke T (2016). Dysphagia in parkinson’s disease. Dysphagia, 31(1), 24–32. 10.1007/s00455-015-9671-9. [DOI] [PubMed] [Google Scholar]
  75. Szewczak JM & Powell FL (2003). Open-flow plethysmography with pressure-decay compensation. Respir Physiol Neurobiol, 134(1), 57–67. 10.1016/s1569-9048(02)00205-7. [DOI] [PubMed] [Google Scholar]
  76. Tankersley CG, Haxhiu MA, & Gauda EB (2002). Differential CO(2)-induced c-fos gene expression in the nucleus tractus solitarii of inbred mouse strains. J Appl Physiol, 92(3), 1277–1284. 10.1152/japplphysiol.00609.2001. [DOI] [PubMed] [Google Scholar]
  77. Telgkamp P, Cao YQ, Basbaum AI, & Ramirez J-M (2002). Long-term deprivation of substance P in PPT-A mutant mice alters the anoxic response of the isolated respiratory network. J Neurophysiol, 88(1), 206–213. 10.1152/jn.2002.88.1.206. [DOI] [PubMed] [Google Scholar]
  78. Thomson WE (1949). Delay networks having maximally flat frequency characteristics. Proceedings of the IEE - Part III: Radio and Communication Engineering, 96(44), 487–490. 10.1049/pi-3.1949.0101. [DOI] [Google Scholar]
  79. Toward MA, Abdala AP, Knopp SJ, Paton JFR, & Bissonnette JM (2013). Increasing brain serotonin corrects CO2 chemosensitivity in methyl-CpG-binding protein 2 (Mecp2)-deficient mice. Exp Physiol, 98(3), 842–849. 10.1113/expphysiol.2012.069872. [DOI] [PMC free article] [PubMed] [Google Scholar]
  80. Troche MS, Huebner I, Rosenbek JC, Okun MS, & Sapienza CM (2011). Respiratory-swallowing coordination and swallowing safety in patients with Parkinson’s disease. Dysphagia, 26(3), 218–224. 10.1007/s00455-010-9289-x. [DOI] [PMC free article] [PubMed] [Google Scholar]
  81. Van Rossum G & Drake FL (2009). Python 3 Reference Manual CreateSpace. [Google Scholar]
  82. Virtanen P, Gommers R, Oliphant TE, Haberland M, Reddy T, Cournapeau D, Burovski E, Peterson P, Weckesser W, Bright J, van der Walt SJ, Brett M, Wilson J, Millman KJ, Mayorov N, Nelson ARJ, Jones E, Kern R, Larson E, … SciPy 1.0 Contributors (2020). SciPy 1.0: fundamental algorithms for scientific computing in Python. Nat Methods, 17(3), 261–272. 10.1038/s41592-019-0686-2. [DOI] [PMC free article] [PubMed] [Google Scholar]
  83. Vogelgesang S, Niebert M, Bischoff AM, Hülsmann S, & Manzke T (2018). Persistent expression of serotonin receptor 5b alters breathing behavior in male mecp2 knockout mice. Front Mol Neurosci, 11, 28. 10.3389/fnmol.2018.00028. [DOI] [PMC free article] [PubMed] [Google Scholar]
  84. Wada H, Nakajoh K, Satoh-Nakagawa T, Suzuki T, Ohrui T, Arai H, & Sasaki H (2001). Risk factors of aspiration pneumonia in Alzheimer’s disease patients. Gerontology, 47(5), 271–276. 10.1159/000052811. [DOI] [PubMed] [Google Scholar]
  85. Ward CS, Huang T-W, Herrera JA, Samaco RC, McGraw CM, Parra DE, Arvide EM, Ito-Ishida A, Meng X, Ure K, Zoghbi HY, & Neul JL (2020). Loss of mecp2 function across several neuronal populations impairs breathing response to acute hypoxia. Front Neurol, 11, 593554. 10.3389/fneur.2020.593554. [DOI] [PMC free article] [PubMed] [Google Scholar]
  86. Wickham H, Averick M, Bryan J, Chang W, McGowan LD, Francois R, Grolemund G, Hayes A, Henry L, Hester J, Kuhn M, Pedersen TL, Miller E, Bache SM, Muller K, Ooms J, Robinson D, Seidel DP, Spinu V, … Yutani H (2019). Welcome to the tidyverse. Journal of Open Source Software, 4(43), 1686. [Google Scholar]
  87. Wickham H, Henry L, Pedersen TL, Luciani T, Decorde M, & Lise V (2022). svglite: An “SVG” Graphics Device r-lib.org.
  88. Wickham H (2007). Reshaping Data with the reshape Package. J Stat Softw,; DOI: 10.18637/jss.v021.i12. [DOI] [Google Scholar]
  89. Wilson C (2016). SWAN: Single Wave Analysis Notebook GitHub. [Google Scholar]
  90. Won JH, Byun SJ, Oh B-M, Park SJ, & Seo HG (2021). Risk and mortality of aspiration pneumonia in Parkinson’s disease: a nationwide database study. Sci Rep, 11(1), 6597. 10.1038/s41598-021-86011-w. [DOI] [PMC free article] [PubMed] [Google Scholar]
  91. Xie Y, Allaire JJ, & Grolemund G (2018). R Markdown: The Definitive Guide Chapman and Hall/ CRC. [Google Scholar]
  92. Xie Y, Dervieux C, & Riederer E (2020). R Markdown Cookbook Chapman and Hall/ CRC. [Google Scholar]
  93. Yagi N, Oku Y, Nagami S, Yamagata Y, Kayashita J, Ishikawa A, Domen K, & Takahashi R (2017). Inappropriate Timing of Swallow in the Respiratory Cycle Causes Breathing-Swallowing Discoordination. Front Physiol, 8, 676. 10.3389/fphys.2017.00676. [DOI] [PMC free article] [PubMed] [Google Scholar]
  94. Zhu H (2021). kableExtra: Construct Complex Table with “kable” and Pipe Syntax R.

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Supplementary Materials

Supinfo2
Supinfo1

Data Availability Statement

All of our source code as well as a downloadable launcher for the GUI is available in our public GitHub repository (https://github.com/MolecularNeurobiology/Breathe_Easy). Within the ReadMe are multiple links to our online documentation (Sphinx and GitHub Pages). We highly suggest first time users to install and launch the GUI, then walk through the vignette provided that includes an example dataset and settings files.

Raw data for our complete Alzheimer’s dataset is too large to store on Zenodo, which is our default data hosting site. However, we will share the data via cloud-based services upon request. Please send correspondence to Russell Ray at Russell.ray@bcm.edu for requesting access.

RESOURCES