Я пытаюсь сгруппировать различные значения на основе предварительно определенного вектора, а затем обновить столбец.
Пример данных
df <- data.frame(ID = 1:5, Type = c("Windows", "Windows Server", "Cat", "Dog", "Eggs"))
it <- c("Windows", "Windows Server")
animal <- c("Cat", "Dog")
food <- c("Eggs")
То, что я пытался, но не удалось
df$Grouping <- gsub(it, "IT", df$Type)
Ошибка: шаблон>1
Метод, который работает, но многословно
Используя dplyr
mutate, я смогу добиться того, чего хочу, но это очень долгонаматывается, поскольку у меня есть несколько элементов в векторе.
df %>% mutate(Grouping = ifelse(Type == "Windows", "IT",
ifelse ...))
Предполагаемый вывод
ID Type Grouping
1 1 Windows IT
2 2 Windows Server IT
3 3 Cat Animal
4 4 Dog Animal
5 5 Eggs Food
Спасибо!