我的问题由两部分组成:首先,我想使用类似于下面的数据框执行最后一次观察(或完整)。因此,应创建缺失的年/月,随后应结转 X1 和 X2 的值。
set.seed(1)
df <- data.frame(year = sort(rep(c(2018,2019),4)),
month = c(1,2,5,8,1,2,3,6),
X1 = sort(sample(1:100,8)),
X2 = sort(sample(1:100,8)))
所需的输出应该是:
year month X1 X2
1 2018 1 20 7
2 2018 2 27 18
3 2018 3 27 18
4 2018 4 27 18
5 2018 5 37 21
6 2018 6 37 21
7 2018 7 37 21
8 2018 8 57 37
9 2018 9 57 37
10 2018 10 57 37
11 2018 11 57 37
12 2018 12 57 37
13 2019 1 62 47
14 2019 2 86 63
15 2019 3 89 66
16 2019 4 89 66
17 2019 5 89 66
18 2019 6 97 73
19 2019 7 97 73
20 2019 8 97 73
21 2019 9 97 73
22 2019 10 97 73
23 2019 11 97 73
24 2019 12 97 73
此外,我还有一些我想分组的变量。因此,如果我有一个名为“组”的变量,由值 1 和 2 组成,我希望对两个组分别执行上述 LOCF。