Tôi có khung dữ liệu với biến số liên tục, tuổi tính theo tháng (age_mnths). Tôi muốn tạo một biến riêng biệt mới, với các loại tuổi dựa trên khoảng thời gian tuổi.Chuyển đổi các giá trị số liên tục thành các danh mục rời rạc được xác định theo khoảng thời gian
# Some example data
rota2 <- data.frame(age_mnth = 1:170)
Tôi đã tạo thủ tục dựa trên ifelse
(bên dưới), nhưng tôi tin rằng có khả năng giải pháp thanh lịch hơn.
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")))))
Tôi biết có chức năng cut
nhưng tôi không thể giải quyết nó vì mục đích của mình để phân loại/phân loại.
Một lỗi cơ bản ở đây là việc sử dụng các toán tử gán trong các giá trị cho "có" và "không" thông số –