Изменение уровня в R
У меня есть поле, где уровни разбиты, как показано ниже:
levels(demo$age)
"18 to 24 years old" "25 to 34 years old" "35 to 44 years old" "45 to 54 years old" "55 to 64 years old" "65 to 74 years old" "75 years old or older"
Как я могу изменить уровни на
"Total " "18 to 24 years old" "25 plus".
1 ответ
Мы создаем vector
из levels
это должно быть изменено
v1 <- c("25 to 34 years old", "35 to 44 years old", "45 to 54 years old",
"55 to 64 years old", "65 to 74 years old" , "75 years old or older")
затем назначьте их на новый уровень
levels(demo$age)[levels(demo$age) %in% v1] <- "25 plus"
Если нам нужен также уровень "Всего"
levels(demo$age) <- c("Total", levels(demo$age))
levels(demo$age)
#[1] "Total" "18 to 24 years old" "25 plus"
данные
set.seed(24)
demo <- data.frame(age = sample(c("18 to 24 years old", v1), 100, replace = TRUE))