iterative cumsum where sum determines the next position to be added

后端 未结 3 1209
天涯浪人
天涯浪人 2021-01-29 07:17

I have a data.table as follows

set.seed(5)
x <- data.table(x=sample(1:20,15))

> x
     x
 1:  5
 2: 14
 3: 17
 4: 20
 5:  2
 6: 11
 7:  8
 8: 15
 9: 12
10         


        
3条回答
  •  广开言路
    2021-01-29 08:12

    A base R solution:

    i = 1
    v = i
    sum = 0
    while (i <= nrow(x)) {
       v = c(v, i)
       sum = sum + x$x[i]
       i = sum
    }
    

提交回复
热议问题