我想根据Sessions
变量
ID
的nr
以下是变量
ID <- c(1,1,2,2,2,3,3,3,3)
Days <- c(0,5,0,5,10,0,5,10,15)
Sessions <- c(1,2,1,2,3,1,2,3,4)
以下是我的数据:
Have <- data.table(ID,Days)
Have
ID Days
1 0
1 5
2 0
2 5
2 10
3 0
3 5
3 10
3 15
以下是我想要得到的数据:
Whant <- data.table(ID,Days,Sessions)
Whant
ID Days Sessions
1 0 1
1 5 2
2 0 1
2 5 2
2 10 3
3 0 1
3 5 2
3 10 3
3 15 4
非常感谢有人可以帮助我。这是一个很棒的论坛!
答案 0 :(得分:0)
我们按'ID'分组,并将'会话'创建为行序列(1:.N
)。
Have[, Sessions:= 1:.N, ID]
或者我们可以使用getanID
library(splitstackshape)
)
library(splitstackshape)
getanID(Have, 'ID')[]