在R

时间:2018-10-09 14:07:28

标签: r

我是R语言的初学者,但是我遇到了以下编码问题:

enter image description here

enter image description here

是我要重新创建为R的总和。 现在,这是我的第一个求和代码(代码段):

z <- 1:J
L<-1000
D<-0
for(k in z){
  for(j in D:D+L-1){
    X[k] = 1/L*sum(X[j])
  }
}

我不知道如何在问题中创建乳胶公式,因此,如果运行代码段,您会看到我尝试在R中重新创建的公式。 我的问题是,我在正确的道路上吗?我不确定如何使用for循环来创建求和。

1 个答案:

答案 0 :(得分:0)

J <- 5
L <- 100
D <- 1  # in R we start to count at 1 (one).  (thanks to Darren)

x <- matrix(1:(L*J), nrow = length(D:(D+L-1)), ncol = J)

funXj_ <- function(j, D, L) sum(x[D:(D+L-1), j], na.rm = T)

X_ <- sapply(1:J, funXj_, D = D, L = L)
#5050 15050 25050 35050 45050

我相信您的x_j^t是某种二维数组。 (所以我以矩阵为例)


我们当然可以自由更改边界

J as 4D as 2L as 80

sapply(1:4, funXj_, D = 2, L = 80)