用一个变量作为中断变量计算 nr 个观察值
Count nr of observations with one variable as break variable
我想根据 ID
变量
中的观察次数来计算 Sessions
的 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
如果有人能帮助我,非常感谢。这是一个很棒的论坛!
我们按 'ID' 分组,并创建 'Sessions' 作为行序列 (1:.N
)。
Have[, Sessions:= 1:.N, ID]
或者我们可以使用来自 library(splitstackshape)
的包装器 (getanID
)
library(splitstackshape)
getanID(Have, 'ID')[]
我想根据 ID
变量
Sessions
的 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
如果有人能帮助我,非常感谢。这是一个很棒的论坛!
我们按 'ID' 分组,并创建 'Sessions' 作为行序列 (1:.N
)。
Have[, Sessions:= 1:.N, ID]
或者我们可以使用来自 library(splitstackshape)
getanID
)
library(splitstackshape)
getanID(Have, 'ID')[]