Ho un frame di dati con una variabile numerica continua, età in mesi (age_mnths). Voglio creare una nuova variabile discreta, con categorie di età basate sugli intervalli di età.Converti valori numerici continui in categorie discrete definite da intervalli
# Some example data
rota2 <- data.frame(age_mnth = 1:170)
Ho creato ifelse
procedura basata (sotto), ma credo che ci sia una possibilità di soluzione più elegante.
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")))))
So che c'è cut
funzione, ma non ho potuto fare con esso per il mio scopo per discretizzare/categorizzare.
Un errore di fondo qui è l'uso dell'operatore di assegnazione dei valori per il "sì" e "no" parametri –