【发布时间】:2019-08-20 12:38:57
【问题描述】:
当我有一个分组的 data.table 时
library(data.table)
dat <- data.table(id=1:10, group=rep(1:2, each=5), x=rnorm(10))
> dat
id group x
1: 1 1 -0.39384959
2: 2 1 -0.03081369
3: 3 1 -1.30571673
4: 4 1 -1.82379155
5: 5 1 2.36751011
6: 6 2 0.21523454
7: 7 2 -0.18905780
8: 8 2 1.80707868
9: 9 2 0.88348164
10: 10 2 0.38374826
我想将每个组中最后一个id 的x 设置为零,我想知道如何实现。我的看法是dat[.N, x:=0, by=group],但这不起作用,因为这只会改变 id 10 的值。这是为什么呢?小插曲在这里似乎没有帮助。
【问题讨论】:
标签: r data.table