Skip to contents

Reference values

GLI-derived predicted values, lower and upper limits of normal, and (when measured values are supplied) z-scores and percent predicted. Each function takes a data frame in and returns a tibble out.

pft_spirometry()
Compute spirometry reference values for given demographics
pft_volumes()
Compute lung volume reference values for given demographics
pft_diffusion()
Compute carbon monoxide diffusion capacity or transfer factor reference values for given demographics

Interpretation primitives

Per-measure clinical interpretation primitives implementing the Stanojevic 2022 ERS/ATS standard.

pft_classify()
Classify ATS spirometry patterns from spirometry and lung-volume measurements
pft_volume_subpattern()
Classify lung-volume sub-pattern per Stanojevic 2022 Figure 10
pft_severity()
Grade severity of lung function impairment from a z-score
pft_bdr()
Bronchodilator response per the ERS/ATS 2022 criterion
pft_prism()
Screen for Preserved Ratio Impaired Spirometry (PRISm)
pft_change()
Conditional change score for serial PFT measurements
pft_fev1q()
FEV1Q: ratio of FEV1 to a sex-specific survivable lower limit
pft_dlco_hb_correct()
Adjust a measured DLCO / TLCO for the patient's hemoglobin
pft_diffusion_interpret()
Classify a diffusion result into a clinical pattern category

Predecessor 2005 standard

Pellegrino 2005 interpretive primitives, provided for reclassification analyses comparing the current Stanojevic 2022 standard against its predecessor. pft_classify(standard = "2005") and pft_interpret(standard = "2005") route through these.

pft_severity_2005()
Severity grading per the Pellegrino 2005 standard
pft_bdr_2005()
Bronchodilator response per the Pellegrino 2005 standard

Clinical extensions

Maneuver-level quality grading (ATS/ERS 2019) and COPD-specific severity (GOLD).

pft_quality()
Grade spirometry quality per ATS/ERS 2019
pft_gold()
Grade COPD severity by GOLD criteria

Workflow and visualisation

End-to-end interpretation in a single call, input QC, and clinical-style visualisation.

pft_interpret()
Comprehensive ERS/ATS 2022 PFT interpretation in one call
pft_plot()
Clinical visualisation for a single PFT result

Tidiers

Long-form pivot helper for downstream dplyr / ggplot2 / tidymodels workflows. The broom::tidy() generic dispatches to this when broom is installed.

pft_long()
Pivot a pft_result to long form

Example data

pft_example
Synthetic example PFT cohort

Re-exports

reexports as_tibble
Objects exported from other packages