【发布时间】:2021-05-13 02:45:53
【问题描述】:
每天都会收集一系列行为测量结果。在某些情况下,未观察到/未测量行为的开始。然而,行为的结束是针对所有观察到的组。因此,变量“剩余天数”简单地倒计时,直到最后一次观察到行为的最后一天(第 1 天)。计算行为开始的天数感觉更自然,我想知道如何将变量“剩余天数”转换为“过去天数”是可能的?而不是还剩 6 天,还剩 5 天等。我想得到一个计算第 1 天、第 2 天等的列。我如何为每个组镜像这些日子,以获得以下输出。
data <- data.frame(Group = as.factor(c("1", "1", "1", "1",
"1", "1", "2", "2",
"2", "2")),
remaining.days = as.factor(c("6", "5", "4", "3",
"2", "1", "4", "3",
"2", "1")),
behaviour.length = as.numeric(c("21", "42", "12", "33",
"12", "32", "15", "65",
"43", "21")))
预期输出
> data
Group remaining.days behaviour.length
1 1 1 21
2 1 2 42
3 1 3 12
4 1 4 33
5 1 5 12
6 1 6 32
7 2 1 15
8 2 2 65
9 2 3 43
10 2 4 21
【问题讨论】:
标签: r