Создайте имена групп для последовательных значений

Выглядит как простая задача, не может придумать более простой способ. У меня есть вектор x ниже, и мне нужно создать имена групп для последовательных значений. Моя попытка была использовать rle, лучшие идеи?

# data
x <- c(1,1,1,2,2,2,3,2,2,1,1)

# make groups
rep(paste0("Group_", 1:length(rle(x)$lengths)), rle(x)$lengths)
# [1] "Group_1" "Group_1" "Group_1" "Group_2" "Group_2" "Group_2" "Group_3" "Group_4"
# [9] "Group_4" "Group_5" "Group_5"
8
задан zx8754 15 September 2016 в 13:40
поделиться