在data.table中枚举group by语句中的元素

Vit*_*nko 0 r data.table

我有这个表 df <- data.table(x = c('a','a','a','a','b','b','b','b'), y = c(4,5,6,3,2,2,6,5)) 并且想要枚举组中的元素(x变量).

结果,我想得到 df <- data.table(x = c('a','a','a','a','b','b','b','b'), y = c(4,5,6,3,2,2,6,5), z = c(1,2,3,4,1,2,3,4))

dan*_*kas 5

这应该做

df[, z := 1:.N, by = x]
Run Code Online (Sandbox Code Playgroud)