我有咒语数据,其中包括 ID、组指示符和咒语长度。
> d <- data.frame(ID = 1:10,
+ group = sample(c("a", "b"), 10, replace = T),
+ spell_length = sample(1:3,10, replace = T))
> head(d)
ID group spell_length
1 b 1
2 a 1
3 a 3
4 b 1
5 a 1
6 b 2
目标是将数据重塑为具有 4 个变量的长格式:ID、组、时间(从 1 到咒语长度)和指示符 (0,1),该 ID 是否仍然存在于该咒语中(例如,如果pell_length 为 1,ID 不应在时间 3) 中出现。
ID group time indicator
1 b 1 1
1 b 2 0
1 b 3 0
2 a 1 1
2 a 2 0
2 a 3 0
3 a 1 1
3 a 2 1
3 a 3 1
您想要像下面这样“重新构建”吗?
d %>%
reframe(time = 1:3, indicator = +(1:3 <= spell_length), .by = c(ID, group))