每次r中发生事件时分配编号
我有以下数据:每次r中发生事件时分配编号,r,R,我有以下数据: t <- c(NA,NA,NA,1,NA,NA,NA,NA,1,NA,1) dt <- data.table(t) t 1: NA 2: NA 3: NA 4: 1 5: NA 6: NA 7: NA 8: NA 9: 1 10: NA 11: 1 谢谢我们可以在“i”中创建非NA元素的逻辑索引,并将('z')指定为“t”的序列 dt[!is.na(t), z := seq_along(t)] dt # t z # 1:
t <- c(NA,NA,NA,1,NA,NA,NA,NA,1,NA,1)
dt <- data.table(t)
t
1: NA
2: NA
3: NA
4: 1
5: NA
6: NA
7: NA
8: NA
9: 1
10: NA
11: 1
谢谢我们可以在“i”中创建非NA元素的逻辑索引,并将('z')指定为“t”的序列
dt[!is.na(t), z := seq_along(t)]
dt
# t z
# 1: NA NA
# 2: NA NA
# 3: NA NA
# 4: 1 1
# 5: NA NA
# 6: NA NA
# 7: NA NA
# 8: NA NA
# 9: 1 2
#10: NA NA
#11: 1 3
我们可以在“i”中创建非NA元素的逻辑索引,并将('z')指定为“t”的序列
dt[!is.na(t), z := seq_along(t)]
dt
# t z
# 1: NA NA
# 2: NA NA
# 3: NA NA
# 4: 1 1
# 5: NA NA
# 6: NA NA
# 7: NA NA
# 8: NA NA
# 9: 1 2
#10: NA NA
#11: 1 3
t==1上的子集,取累积和
dt[t==1, z := cumsum(t)]
t==1上的子集,取累积和
dt[t==1, z := cumsum(t)]
与
df%groupby(t)%%>%突变(z=cumsum(t))
df%group\u by(t)%%>%mutate(z=cumsum(t))