Hi I need to achieve something like this :
grp value diff
1 10 NA # diff[1] = value[2]-value[0] of grp = 1
1 15 10 # diff[2] = value[3]-value[1] of grp = 1
1 20 -5 # diff[3] = value[4]-value[2] of grp = 1
1 10 NA # diff[4] = value[5]-value[3] of grp = 1
2 25 NA # diff[5] = value[6]-value[4] of grp = 2
2 30 10 # diff[6] = value[7]-value[5] of grp = 2
2 35 NA # diff[7] = value[8]-value[6] of grp = 2
I have tried using functions like shift
and lag
but cannot get this type of solution where I take the difference of preceding values and subtract them, where it is as diff[i] = value[i+1] - value[i-1]
Using for loop
is running into errors, so is there a better way to do this?