我有一个包含一组变量的数据框,我希望将它们以不同的长度进行滞后,以便稍后在回归中使用它们(而不是手动逐个滞后一个变量)。
我在Stackoverflow上找到了这段代码(链接),看起来可以解决问题:
df = data.frame(a = 1:10, b = 21:30)
dplyr::mutate_all(df, lag)
a b
1 NA NA
2 1 21
3 2 22
4 3 23
5 4 24
6 5 25
7 6 26
8 7 27
9 8 28
10 9 29
问题在于这会使每一列都有延迟,而我有些列并不想要有延迟。我该如何修改上述代码以使我不希望有延迟的列被排除?另外,我该如何更改不同的延迟长度,现在它只是按默认设置延迟1。
lag
更改为dplyr::lag
,看看是否有帮助? - Frank Zhang