## ----setup, include = FALSE--------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>", fig.width = 6, fig.height = 4 ) library(pft) set.seed(7) ## ----------------------------------------------------------------------------- # Box 2 worked example: 14-year-old male, FEV1 z dropped from -0.78 # to -1.60 over 3 months. pft_change(z1 = -0.78, z2 = -1.60, age_t1 = 14, time_years = 0.25) ## ----------------------------------------------------------------------------- pft_change(z1 = -0.78, z2 = -1.60, age_t1 = 14, time_years = 4) ## ----------------------------------------------------------------------------- # Box 3 worked example: 70-year-old female with FEV1 = 0.9 L. pft_fev1q(fev1 = 0.9, sex = "F", age = 70) ## ----eval = requireNamespace("ggplot2", quietly = TRUE)----------------------- library(ggplot2) serial <- data.frame( patient_id = rep(1:2, each = 4), visit_date = rep(as.Date(c("2020-01-15","2021-03-10", "2022-05-20","2023-07-30")), 2), fev1_zscore_2022 = c(-0.5, -0.8, -1.2, -1.6, 0.2, 0.0, -0.3, -0.5) ) ggplot(serial, aes(visit_date, fev1_zscore_2022, colour = factor(patient_id), group = patient_id)) + geom_hline(yintercept = -1.645, linetype = "dotted") + geom_line() + geom_point() + labs(x = "Visit date", y = "FEV1 z-score", colour = "Patient") + theme_minimal()