【发布时间】:2017-04-18 06:22:07
【问题描述】:
我有一个包含两列的 data.table。
dt = data.table(a = c(0,0,-1,rep(0,3),-1,1), b = c(1,2,3,2,4,2,4,5))
> dt
a b
1: 0 1
2: 0 2
3: -1 3
4: 0 2
5: 0 4
6: 0 2
7: -1 4
8: 1 5
我需要做的是任何时候列 a == -1 我需要将 b 列中的值结转到下一行 a == -1 之前的位置。如果没有更多的-1,那么b列中的值需要一直持续到data.table的末尾
这是我希望的结果
a b
1: 0 1
2: 0 2
3: -1 3
4: 0 3
5: 0 3
6: 0 3
7: -1 4
8: 1 4
【问题讨论】:
标签: r data.table