У меня есть модель, где люди могут умереть и размножаться.Я записываю информацию из модели через заданные интервалы.Я знаю личность людей и номер итерации, из которого я взял выборку:
df1<-data.frame(
who= c(1,2,3,4,1,2,3,3,5),
iteration = c(1,1,1,1,2,2,2,3,3)
)
df1
Но у каждого из них есть список номеров, которые я хочу отследить.Поскольку с каждым человеком связано более одного числа, я получаю два фрейма данных неравного размера выборки.
df2 <- data.frame(values=c(1,1, # id = 1
1,2, # id = 2
2,1, # id = 3
0,0, # id = 4
1,1, # id = 1
1,2, # id = 2
2,1, # id = 3
2,1, # id = 3
0,0)) # id = 5
df2
Я хочу связать их, чтобы переменная 'who' соответствовала своему значению.Я сделал следующее, чтобы разбить значения на куски нужного размера, но теперь я застрял.
df3 <- split(df2$values, ceiling(seq_along(df2$values)/2))
Я должен получить что-то похожее на это:
who iteration value1 value2
1 1 1 1
2 1 1 2
3 1 2 1
4 1 0 0
1 2 1 1
2 2 1 2
3 2 2 1
3 3 2 1
5 3 0 0