R中的for循环计算错误结果
For loop in R calculation wrong result
我要计算
sum_{i}^{n} x_{i}^2 * lambda^(n-i) / sum_{i}^{n} lambda^(n-i)
在 R 中这样做我设法做到了 following.But 零 occured.What 我做错了吗?
n = 10
x = seq(1,n,1);x
lambda = 0.99
mat = 0
for (i in 2:n) {
mat = (lambda^(n-i)*x[i-1]^2) / (lambda^(n-i))
}
mat
结果必须是每个条目的方差x_{i}
好的,我试试看是不是你需要的@The Red:
n <- 10
x <- seq(1,n,1);x
lambda <- 0.99
mat <- 0
vect_mat <- rep(0, n-1); vect_mat
for (i in 2:n) {
mat <- mat + (lambda^(n-i)*x[i-1]^2) / (lambda^(n-i))
vect_mat[i-1] <- mat
}
mat
vect_mat
在 运行 之后,结果是:
> mat
[1] 285
> vect_mat
[1] 1 5 14 30 55 91 140 204 285
我要计算
sum_{i}^{n} x_{i}^2 * lambda^(n-i) / sum_{i}^{n} lambda^(n-i)
在 R 中这样做我设法做到了 following.But 零 occured.What 我做错了吗?
n = 10
x = seq(1,n,1);x
lambda = 0.99
mat = 0
for (i in 2:n) {
mat = (lambda^(n-i)*x[i-1]^2) / (lambda^(n-i))
}
mat
结果必须是每个条目的方差x_{i}
好的,我试试看是不是你需要的@The Red:
n <- 10
x <- seq(1,n,1);x
lambda <- 0.99
mat <- 0
vect_mat <- rep(0, n-1); vect_mat
for (i in 2:n) {
mat <- mat + (lambda^(n-i)*x[i-1]^2) / (lambda^(n-i))
vect_mat[i-1] <- mat
}
mat
vect_mat
在 运行 之后,结果是:
> mat
[1] 285
> vect_mat
[1] 1 5 14 30 55 91 140 204 285