See CDC https://www.cdc.gov/diabetes/managing/managing-blood-sugar/a1c.html

e_calc_a1c_categories(
  a1c,
  a1c_breaks = c(-Inf, 5.7, 6.4, Inf),
  a1c_labels = c("Neither", "Pre-diabetes", "Diabetes")
)

Arguments

a1c

A1c values

a1c_breaks

Breaks defining labeled ranges, intervals are closed on the left

a1c_labels

Labels for values between break values including lower bound

Value

a1c_cat, categorical levels of A1c

Examples

a1c      <- c(NA, seq(0,15, by =1), NA)
a1c_cat  <- e_calc_a1c_categories(a1c)
data.frame(a1c, a1c_cat)
#>    a1c      a1c_cat
#> 1   NA         <NA>
#> 2    0      Neither
#> 3    1      Neither
#> 4    2      Neither
#> 5    3      Neither
#> 6    4      Neither
#> 7    5      Neither
#> 8    6 Pre-diabetes
#> 9    7     Diabetes
#> 10   8     Diabetes
#> 11   9     Diabetes
#> 12  10     Diabetes
#> 13  11     Diabetes
#> 14  12     Diabetes
#> 15  13     Diabetes
#> 16  14     Diabetes
#> 17  15     Diabetes
#> 18  NA         <NA>