假设我有以下求和。 [汇总图像]。 如何编写 for 循环,以便可以将 j = 1 的值一直存储到 j = m 的向量中。
我尝试了以下
theta1 <- 1
theta2 <- 2
z = c()
for(i in 1:j){
z[i] <- sum(exp[(theta1 * j + theta2 * j)
}
然而,我得到一个长度为 j 的向量,只有相同的输出
答案 0 :(得分:1)
看看等式,这可能就是你要找的。p>
首先,您从一个空向量 z
开始:
z = c()
使用您的等式项,我们将索引称为 j
。然后您可能需要一个从 1 到 for
的 m
循环(确保定义 m
)。然后可以按如下方式计算每个元素:
for (j in 1:m) {
z[j] <- exp((theta1 * j) + (theta2 * (j ^ 2)))
}
向量元素的最终总和为:
sum(z)
由于 exp
是矢量化,您可以考虑以下替代方案,而不是使用 for
循环:
j <- 1:m
sum(exp((theta1 * j) + (theta2 * (j ^ 2))))
这应该提供相同的答案。