Предположим, у меня есть следующий вектор:
dat <- c(1,1,1, 2,2,2, 3,3, 4,4,4,4) <- (I added spaces to better see grouping)
Я хотел бы назначить последовательные номера, начиная с 1
, перезапуская для каждого уникального значения в dat
. Желаемый результат будет:
1 2 3 1 2 3 1 2 1 2 3 4 <- (I added spaces to better see grouping)
Моя попытка:
unlist(
lapply(unique(dat), function(x)
seq(1,length(which(dat==x)==T),1)
)
)
[1] 1 2 3 1 2 3 1 2 1 2 3 4
Есть ли более простой способ сделать это?