如何在组中为 R 创建滞后变量?
滞后变量是变量类型,它包含我们要创建滞后变量的变量的先前的值,并且第一个值被忽略。因此,如果我们创建了一个滞后变量,该变量依赖于分组变量或因子变量,那么每个组中将始终缺少一个值。
示例
考虑以下数据框
> set.seed(2)
> Factor<-rep(c("F1","F2","F3","F4"),each=5)
> Rate<-c(12,54,18,26,14,25,81,47,15,12,96,25,14,34,68,78,42,56,81,75)
> df<-data.frame(Factor,Rate)
> df
Factor Rate
1 F1 12
2 F1 54
3 F1 18
4 F1 26
5 F1 14
6 F2 25
7 F2 81
8 F2 47
9 F2 15
10 F2 12
11 F3 96
12 F3 25
13 F3 14
14 F3 34
15 F3 68
16 F4 78
17 F4 42
18 F4 56
19 F4 81
20 F4 75为速率创建滞后变量,将因子变量视为组变量 −
> df$Lagged_Variable <- c(NA, df$Rate[-nrow(df)]) > df$Lagged_Variable[which(!duplicated(df$Factor))] <- NA > df Factor Rate Lagged_Variable 1 F1 12 NA 2 F1 54 12 3 F1 18 54 4 F1 26 18 5 F1 14 26 6 F2 25 NA 7 F2 81 25 8 F2 47 81 9 F2 15 47 10 F2 12 15 11 F3 96 NA 12 F3 25 96 13 F3 14 25 14 F3 34 14 15 F3 68 34 16 F4 78 NA 17 F4 42 78 18 F4 56 42 19 F4 81 56 20 F4 75 81
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP