R中所有列的循环
我正在尝试为所有列循环此代码,其中列名为1,2,3,4,5R中所有列的循环,r,loops,R,Loops,我正在尝试为所有列循环此代码,其中列名为1,2,3,4,5 MoM1 <- (Data$1-lag(Data$1)) /lag(Data$1) MoM1这是否有效: > Data 1 2 3 4 5 1 6 5 5 10 6 2 1 8 1 9 6 3 4 4 5 8 2 4 5 1 4 5 2 5 9 9 10 5 8 > y <- lapply(Data, function(x) (x-lag(x))/lag(x)) > y $`1`
MoM1 <- (Data$1-lag(Data$1)) /lag(Data$1)
MoM1这是否有效:
> Data
1 2 3 4 5
1 6 5 5 10 6
2 1 8 1 9 6
3 4 4 5 8 2
4 5 1 4 5 2
5 9 9 10 5 8
> y <- lapply(Data, function(x) (x-lag(x))/lag(x))
> y
$`1`
[1] NA -0.8333333 3.0000000 0.2500000 0.8000000
$`2`
[1] NA 0.60 -0.50 -0.75 8.00
$`3`
[1] NA -0.8 4.0 -0.2 1.5
$`4`
[1] NA -0.1000000 -0.1111111 -0.3750000 0.0000000
$`5`
[1] NA 0.0000000 -0.6666667 0.0000000 3.0000000
> names(y) <- paste0('MoM', as.numeric(names(y)))
> y
$MoM1
[1] NA -0.8333333 3.0000000 0.2500000 0.8000000
$MoM2
[1] NA 0.60 -0.50 -0.75 8.00
$MoM3
[1] NA -0.8 4.0 -0.2 1.5
$MoM4
[1] NA -0.1000000 -0.1111111 -0.3750000 0.0000000
$MoM5
[1] NA 0.0000000 -0.6666667 0.0000000 3.0000000
>
>数据
1 2 3 4 5
1 6 5 5 10 6
2 1 8 1 9 6
3 4 4 5 8 2
4 5 1 4 5 2
5 9 9 10 5 8
>y y
$`1`
[1] NA-0.8333333 3.0000000.2500000.8000000
$`2`
[1] NA 0.60-0.50-0.75 8.00
$`3`
[1] NA-0.84.0-0.21.5
$`4`
[1] NA-0.1000000-0.1111111-0.3750000 0.0000000
$`5`
[1] NA 0.0000000-0.66667 0.0000000 3.0000000
>姓名(y)y
$MoM1
[1] NA-0.8333333 3.0000000.2500000.8000000
$MoM2
[1] NA 0.60-0.50-0.75 8.00
$MoM3
[1] NA-0.84.0-0.21.5
$MoM4
[1] NA-0.1000000-0.1111111-0.3750000 0.0000000
$MoM5
[1] NA 0.0000000-0.66667 0.0000000 3.0000000
>
> Data
1 2 3 4 5
1 6 5 5 10 6
2 1 8 1 9 6
3 4 4 5 8 2
4 5 1 4 5 2
5 9 9 10 5 8
> y <- lapply(Data, function(x) (x-lag(x))/lag(x))
> y
$`1`
[1] NA -0.8333333 3.0000000 0.2500000 0.8000000
$`2`
[1] NA 0.60 -0.50 -0.75 8.00
$`3`
[1] NA -0.8 4.0 -0.2 1.5
$`4`
[1] NA -0.1000000 -0.1111111 -0.3750000 0.0000000
$`5`
[1] NA 0.0000000 -0.6666667 0.0000000 3.0000000
> names(y) <- paste0('MoM', as.numeric(names(y)))
> y
$MoM1
[1] NA -0.8333333 3.0000000 0.2500000 0.8000000
$MoM2
[1] NA 0.60 -0.50 -0.75 8.00
$MoM3
[1] NA -0.8 4.0 -0.2 1.5
$MoM4
[1] NA -0.1000000 -0.1111111 -0.3750000 0.0000000
$MoM5
[1] NA 0.0000000 -0.6666667 0.0000000 3.0000000
>