I was wondering if there is any way to wrap up the code below to make it shorter; I was thinking to use a loop or similar function to do so. This code generates a new variable (cat) using AgeatDeath and Disability. The code creates the cat variable with the value of 75.6-77.1 if AgeatDeath is between 75.6 and 77.1 and Disability equals "No Intelectual and Developmental Disabilities." Thanks, Nader
IDD <- IDD %>%
mutate(
cat = case_when(
AgeatDeath >= 75.6 &
AgeatDeath < 77.1 &
Disability == 'No Intelectual and Developmental Disabilities' ~ '75.6-77.1',
AgeatDeath >= 74.3 &
AgeatDeath < 75.6 &
Disability == 'No Intelectual and Developmental Disabilities' ~ '74.3-75.6',
AgeatDeath >= 72.5 &
AgeatDeath < 74.3 &
Disability == 'No Intelectual and Developmental Disabilities' ~ '72.5-74.3',
AgeatDeath >= 66.5 &
AgeatDeath < 72.5 &
Disability == 'No Intelectual and Developmental Disabilities' ~ '66.6-72.5',
AgeatDeath >= 64.1 &
AgeatDeath < 71.9 &
Disability == 'Intellectual disability' ~ '64.1-71.9',
AgeatDeath >= 62.3 &
AgeatDeath < 64.1 &
Disability == 'Intellectual disability' ~ '62.3-64.1',
AgeatDeath >= 59.4 &
AgeatDeath < 62.3 &
Disability == 'Intellectual disability' ~ '59.4-62.3',
AgeatDeath >= 50.4 &
AgeatDeath < 59.4 &
Disability == 'Intellectual disability' ~ '50.4-59.4',
AgeatDeath >= 56.47 &
AgeatDeath < 59.1 &
Disability == 'Down syndrome' ~ '56.47-59',
AgeatDeath >= 55.59 &
AgeatDeath < 56.47 &
Disability == 'Down syndrome' ~ '55.59-56.47',
AgeatDeath >= 54.42 &
AgeatDeath < 55.59 &
Disability == 'Down syndrome' ~ '54.42-55.59',
AgeatDeath >= 50.92 &
AgeatDeath < 54.42 &
Disability == 'Down syndrome' ~ '50.92-54.42',
AgeatDeath >= 53.3 &
AgeatDeath < 58.2 &
Disability == 'Cerebral palsy' ~ '53.3-58.2',
AgeatDeath >= 50.6 &
AgeatDeath < 53.3 &
Disability == 'Cerebral palsy' ~ '50.6-53.3',
AgeatDeath >= 48.9 &
AgeatDeath < 50.6 &
Disability == 'Cerebral palsy' ~ '48.9-50.6',
AgeatDeath >= 41.38 &
AgeatDeath < 48.9 &
Disability == 'Cerebral palsy' ~ '41.4-48.9',
AgeatDeath >= 44.2 &
AgeatDeath < 51.1 &
Disability == 'Other rare developmental disabilities' ~ '44.2-51',
AgeatDeath >= 41.6 &
AgeatDeath < 44.2 &
Disability == 'Other rare developmental disabilities' ~ '41.6-44.2',
AgeatDeath >= 30.6 &
AgeatDeath < 38.4 &
Disability == 'Other rare developmental disabilities' ~ '30.6-38.4',
AgeatDeath >= 38.4 &
AgeatDeath < 41.6 &
Disability == 'Other rare developmental disabilities' ~ '38.4-41.6'
)
)