Вы использовали пакет dplyr?Будет ли что-то подобное этой работе?
library("dplyr")
WithSumIDAPillars$newcolumn <-
case_when(
WithSumIDAPillars$`Sum of Pillar` <= 6 ~ "Low",
WithSumIDAPillars$`Sum of Pillar` <= 11 ~ "Medium",
WithSumIDAPillars$`Sum of Pillar` <= 16 ~ "High",
TRUE ~ NA_character_
)
Функция case_when()
последовательно обрабатывает каждый случай до тех пор, пока одно из выражений в левой части ~
не станет равным TRUE
, поэтому последний операториспользуется в качестве значения по умолчанию.
В зависимости от вашего приложения, может быть проще назвать ваш столбец sum_of_pillar
, используя подчеркивание.Это упростило бы использование pipe (%>%
) и функции mutate()
для более краткой записи:
WithSumIDAPillars <-
WithSumIDAPillars %>%
mutate(
newcolumn = case_when(
sum_of_pillar <= 5 ~ "Low",
sum_of_pillar <= 11 ~ "Medium",
sum_of_pillar <= 16 ~ "High",
TRUE ~ NA_character_
)
)
Чтобы узнать больше о dplyr, вы можете посетить веб-сайт: https://dplyr.tidyverse.org/ или (бесплатно) R для книги по науке о данных: https://r4ds.had.co.nz/
Надеюсь, это поможет!