У меня есть следующий фрейм данных:
a <- data.frame(
group1=factor(rep(c("a","b"),each=6,times=1)),
time=rep(1:6,each=1,times=2),
newcolumn = c(1,1,2,2,3,3,1,1,2,2,3,3)
)
Я хочу скопировать вывод newcolumn
с помощью функции rep by group (переменная time
предназначена для упорядочивания). Другими словами, для каждой группы, упорядоченной по времени, как я могу назначить последовательность 1,1,2,2,n,n
? Мне также нужно общее решение (в случае, если группы имеют разное количество строк, или я хочу повторить значения 3,10,n
раз).
Например, я могу сгенерировать эту последовательность с помощью этого:
newcolumn=rep(1:3,each=2,times=2)
Но это не сработает в выражении group by, где group1
имеет разные строки.