Categorizes subjects into FDA-defined age groups for pediatric and geriatric drug development studies.
Value
Integer vector of age categories (1-6). Returns the value of
getOption("scicalc.missing_value") (default -999) for
missing values. Includes a category_standard attribute set to "FDA".
Details
FDA age categories:
1: Neonate: 0 to <28 days
2: Infant: 28 days to <2 years
3: Child: 2 to <12 years
4: Adolescent: 12 to <18 years
5: Adult: 18 to <65 years
6: Elderly Adult: ≥65 years
Custom bands
Set options(scicalc.agec_config = ) to a data frame of custom bands
with columns label, min (lower bound), and code to
replace the FDA bands entirely. Bands are half-open [min, next min)
with the top band open-ended; ages below the lowest min return the
missing value. The category_standard attribute is then "custom". For
example, data.frame(label = c("child", "adult", "senior"),
min = c(0, 18, 65), code = c(1, 2, 3)).
References
Pediatric Drug Development: Regulatory Considerations — Complying With the Pediatric Research Equity Act and Qualifying for Pediatric Exclusivity Under the Best Pharmaceuticals for Children Act Guidance for Industry
Guideline for Industry Studies in Support of Special Populations: Geriatrics
Examples
age_cat <- agec(24)
df <- data.frame(
ID = 1:12,
AGE = c(0.07, 28 / 365, 0.25, 1, 2, 4, 12, 16, 18, 24, 65, 70)
)
dplyr::mutate(df, AGEC = agec(AGE))
#> Age near Neonate boundary (28 days)
#> Warning: There was 1 warning in `dplyr::mutate()`.
#> ℹ In argument: `AGEC = agec(AGE)`.
#> Caused by warning:
#> ! Neonate ages detected. Confirm assignment.
#> ID AGE AGEC
#> 1 1 0.07000000 1
#> 2 2 0.07671233 2
#> 3 3 0.25000000 2
#> 4 4 1.00000000 2
#> 5 5 2.00000000 3
#> 6 6 4.00000000 3
#> 7 7 12.00000000 4
#> 8 8 16.00000000 4
#> 9 9 18.00000000 5
#> 10 10 24.00000000 5
#> 11 11 65.00000000 6
#> 12 12 70.00000000 6
