I have a data frame with a continuous numeric variable, age in months (age_mnths). I want to make a new discrete variable, with age categories based on age intervals.
# Some example data
rota2 <- data.frame(age_mnth = 1:170)
I've created ifelse
based procedure (below), but I believe there is a possibility for more elegant solution.
rota2$age_gr<-ifelse(rota2$age_mnth < 6, rr2 <- "0-5 mnths",
ifelse(rota2$age_mnth > 5 & rota2$age_mnth < 12, rr2 <- "6-11 mnths",
ifelse(rota2$age_mnth > 11 & rota2$age_mnth < 24, rr2 <- "12-23 mnths",
ifelse(rota2$age_mnth > 23 & rota2$age_mnth < 60, rr2 <- "24-59 mnths",
ifelse(rota2$age_mnth > 59 & rota2$age_mnth < 167, rr2 <- "5-14 yrs",
rr2 <- "adult")))))
I know there is cut
function but I couldn't deal with it for my purpose to discretize / categorize.
If there is a reason you don't want to use
cut
then I don't understand why.cut
will work fine for what you want to do