我有以下类型的大向量:
myvec <- c(1,2,3,5, 0,1,2,5,8, 0,1,3, 0,2,3,8, 0,3,5)
group 对应的向量是:
grp <- c(rep(1, 4), rep(2, 5), rep(3,3), rep(4, 4), rep(5, 3))
我需要以这样的方式添加数字,以便将连续组的最后一个数字添加到第二组中的距离加上 2(以创建间隙)。然后第二组的最后一个数字将添加到第三个 pus 3 以创建一个间隙。
因此新向量看起来像
myvecnew <- c(1, 2, 3 ,5, # maximum 5 + 2 applied in group 2
5+0+2 = 7, 5+1+2 = 8, 5+2+2 = 9, 5+5+2 = 12, 8+5+2 = 15, # maximum 15 + 2 applied in group 3
0+15+2 = 17, 1+15+2 = 18, 3+15+2 = 20, # maximum 20 + 2 applied to group 4
0 + 20 + 2 = 22,..........and so on)
因此,第 1 组加 2 的最大值(值)被添加到每个第 2 组值中,第 2 组的新最大值将被添加到第 3 组加上常数 2,我需要继续前进,直到所有组都被覆盖。如何做到这一点?...........